可能不是最清晰的标题,但这里是 - 我需要在页面上显示两个独立的倒计时,接受用户输入的每个起始值。当一个到达零时,另一个启动并倒计时到零。代码如下,并按预期工作。
我调用 Timer1 函数,它检查变量的起始值,如果存在,则开始计数。当计数为零时,我清除间隔,将显示重置为起始值,并触发第二个计时器,如果它分配了一个值:
function Timer1() {
var gDuration = goTime;
countdown = setInterval(function () {
if (gDuration >= 0) {
$("#durationValue").html(ToTime(gDuration));
gDuration--;
}
else {
clearInterval(countdown);
$("#durationValue").html(ToTime(goTime));
if (restTime != 0) {
Timer2();
}
}
}, 1000);
}
function Timer2() {
var rDuration = restTime;
countdown = setInterval(function () {
if (rDuration >= 0) {
$("#restValue").html(ToTime(rDuration));
rDuration--;
}
else {
clearInterval(countdown);
$("#restValue").html(ToTime(restTime));
}
}, 1000);
}
下一步是允许该进程运行一定数量的循环 - 我尝试将 Timer1 中的 setInterval 包装在一个 for 循环中,但这是行不通的。任何想法如何更好地解决这个问题?