最近再写一个考试系统,到点交卷,在手机上跑定时器是没问题的,在浏览器上跑的时候,一离开页面(指切换标签页),再次回来时间就会慢很多
关于浏览器变慢的原因是,当离开当前页面时,cpu检测到你不在当前页面,为了节省资源,会放慢浏览器的时间。导致进入页面,时间变慢。
有没有解决办法呢,当然是有的,如果我们可以监听进出页面,那么我们进入页面的时候,重启定时器,即修正时间,那么就不会有问题了
document.addEventListener("visibilitychange", function() { if (document.hidden === true) { // 页面被挂起 console.log('离开'); clearInterval(that.timerll); } else { clearInterval(that.timerll); that.time() console.log('进入'); } });
使用以上代码,即可解决浏览器中定时器变慢的问题
标签:定时器,浏览器,变慢,会慢,离开,中跑,时间,页面 From: https://www.cnblogs.com/bingchenzhilu/p/17457031.html