为什么我的倒计时器不能启动和停止?
我需要制作一个从5到0的简单倒计时计时器,其中包含启动和停止计数器的按钮。我唯一不知道的是我的计数器为什么不停下来。
代码如下:
数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假"> function clock() {
var myTimer = setInterval(myClock, 1000);
var c = 5;
function myClock() {
document.getElementById("demo").innerHTML = --c;
if (c == 0) {
clearInterval(myTimer);
alert("Reached zero");
}
}
}
<p id="demo">5</p>
<button onclick="clock()">Start counter</button>
<button onclick="clearInterval(myTimer)">Stop counter</button>
解决方案
在这里,您只需要使myTimer
成为全局的。我还修复了一个故障,重置计时器后,它不会显示5。
var myTimer;
function clock() {
myTimer = setInterval(myClock, 1000);
var c = 5;
function myClock() {
document.getElementById("demo").innerHTML = --c;
if (c == 0) {
clearInterval(myTimer);
alert("Reached zero");
}
}
}
<p id="demo">5</p>
<button onclick="clock(); document.getElementById('demo').innerHTML='5';">Start counter</button>
<button onclick="clearInterval(myTimer);">Stop counter</button>
相关文章