Để thực hành, tôi đang cố hiển thị số tăng từ 0 - 9, sau đó giảm từ 9 - 0 và lặp lại vô hạn.
Mã mà tôi có cho đến nay dường như rất gần, nhưng khi lặp lại lần thứ hai, các cuộc gọi setInterval
của 2 chức năng tương ứng countUp
và countDown
dường như xung đột với nhau, vì các số được hiển thị không được tính theo thứ tự mong muốn. .. và sau đó trình duyệt bị treo.
Đây là mã của tôi:
Làm cách nào để sử dụng chính xác setInterval và clearInterval để chuyển đổi giữa hai hàm khác nhau?
<!DOCTYPE html>
<html>
<head>
<title>Algorithm Test</title>
</head>
<body onload = "onloadFunctions();">
<script type = "text/javascript">
function onloadFunctions()
{
countUp();
setInterval(countUp, 200);
}
var count = 0;
function countUp()
{
document.getElementById("here").innerHTML = count;
count++;
if(count == 10)
{
clearInterval(this);
countDown();
setInterval(countDown, 200);
}
}
function countDown()
{
document.getElementById("here").innerHTML = count;
count--;
if(count == 0)
{
clearInterval(this);
countUp();
setInterval(countUp, 200);
}
}
</script>
From 0 - 9, up and down: <div id = "here"></div>
</body>
</html>
Xin cảm ơn, điều đó đã xảy ra! –