http://jsbin.com/hafejebaho/edit?html,output
大家好。我找到了这个定时器代码,它的功能相当不错。我试图理解它的逻辑,当我按下startPause按钮时,我似乎无法弄清楚计时器是如何暂停的。
根据代码,当你在运行== 0时按startPause然后启动increment()。但是,当你在运行== 1时再次按下startPause时,没有实际停止计时器的功能。怎么可能。我看到运行设置为0并且按钮名称更改为“恢复”但没有其他功能实际停止计时器..我会认为它们必须是某种中断计时器功能。
这是一个菜鸟问题,但我很感激任何答案... tx ..
答案 0 :(得分:0)
那是因为increment()
功能:
function increment() {
if (running == 1) {
setTimeout(function() {
time++;
document.getElementById("output").innerHTML = time;
increment();
}, 100);
}
}
具体来说,increment()
函数内的逻辑只会在running == 1
时运行。由于running == 0
按下暂停,逻辑就会停止。