我想在 JavaScript 中运行一个计时器 30 秒,播放一个哔哔声 .WAV 文件,然后数 10 秒并再次播放哔哔声。我希望重复此操作,直到达到所需的时间或用户进行干预并单击停止按钮。
我是这样实现的:
function startWorkOut(param) {
if (param === 1) {
setTimeout(playBeep, 30000); //30 second workout
}
else if (param === 0) {
setTimeout(playBeep, 10000); //10 second rest
}
return;
}
function playBeep() {
beep.play(); //already loaded above this snippet
i++; //simple switch for going back and forth between 30 & 10 secs
if (i % 2 === 1) {
startWorkOut(0);
}
else startWorkOut(1);
return;
}
问题是我不知道如何阻止它。因为这两个函数来回调用对方,所以我需要知道如何进行某种手动中断。
最佳答案
赋值给一个变量
var beepTimer = setTimeout(playBeep, 30000); //30 second workout
clearTimeout(beepTimer); // This will clear that timer
关于javascript - 如何启动和停止多个 JavaScript 计时器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16595496/