我已经写了一个倒计时24小时计时器,但它是缓慢的,有时我的系统时钟和计时器之间的差异时间达到2小时。我想知道是否有setinterval的替代方案,我将其放在我的代码中。
var _tick = setInterval(function() {
if ((remSeconds) > 0) {
if (hoursCounter > 0) {
if (minutesCounter == 0 && secondsCounter == 0) {
minutesCounter = 60;
hoursCounter = hoursCounter - 1;
}
}
if (secondsCounter == 0) {
secondsCounter = 60;
minutesCounter = minutesCounter - 1;
}
secondsCounter = secondsCounter - 1;
remSeconds = remSeconds - 1;
$seconds.text(formatNumber(secondsCounter));
$minutes.text(formatNumber(minutesCounter));
$hours.text(formatNumber(hoursCounter));
} else {
clearInterval(_tick);
document.getElementById("tRemaining").innerHTML = "EXPIRED";
}
},
1000);
2条答案
按热度按时间olqngx591#
你可以这样做:
如果你想要一个干净的输出,你还需要添加一些东西来处理
0
填充,以避免像23:7:31
这样的东西,但本质是存在的。68bkxrlz2#