我正在开发一个计时器,记录时间。为此,我使用的是java脚本的setInterval方法,现在的问题是,如果tab处于非活动状态,它就不能正常工作。
有一个解决方案,我可以存储旧时间,并从新时间减去一个问题,如果在启动计时器后,如果用户更改了系统时间,那么它会影响到我的计时器。如果有其他可能的方法或解决办法,请通知我。
timerInterval = setInterval(function() {
seconds=seconds+1;
if(seconds==60)
{
minutes=minutes+1;
if(minutes==60)
{
minutes=0;
hours=hours+1;
}
$("#task"+aData['taskId']).html(("0" + hours).slice(-2)+":"+("0" + minutes).slice(-2));
seconds=0;
}
},1000);
最佳答案
尝试setTimeout
而不是setInterval
setInterval
不要根据浏览器负载对调用函数设置优先级。我也遇到过同样的问题,我用setTimeout
解决了它
关于javascript - setInterval()对于非事件选项卡无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27015131/