浏览器非当前页面中的定时器会变慢

原创 2016年06月01日 14:19:06

开一个定时器,如果切换到其他页面,等一会再回来看,发现浏览器在等的这一会时间里,变得很慢,有办法解决吗?

原因:浏览器的页面当前如果不使用,会有减少cpu使用率的措施,所以如果开的定时器很快,就会出现这种情况

例(大家开两个页面,用相同的代码,同时测试这个现象):

var t = 900000;
        setInterval(function() {
            console.log(formatMillisecond(t));
            t-=25;//关键点在这里
        }, 25);//关键点在这里

        function formatMillisecond(num) {
            var millisecond = num%1000,
                second = addZero(parseInt(num/1000%60)) +':',
                minute = addZero(parseInt(num/1000/60%60)) +':';


            millisecond = millisecond>99 ? (millisecond+'').substring(0, (millisecond+'').length-1) : millisecond;
            millisecond = addZero(parseInt(millisecond));


            return minute + second + millisecond;
        };


        //个位数前面加0(num必须为int)
        function addZero(num) {
            return num<10 ? "0" + num : num;
        };

解决方法:让定时器的定时间隔增加,即把上段代码中的25ms执行一次,改成1000ms执行一次(至于最后两位数字变化的很快,大家可以开个25ms的定时器模拟一下,反正也没人看得出来)

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

当前页面预览和关闭消息弹框、获取浏览器版本

当前页面预览和关闭消息弹框,获取浏览器版本

如何获得当前屏幕顶端距离整个页面最上端的距离(即js获取浏览器滚动条距离顶端的距离)

最近在做项目的时候遇到需要用js获取滚动条距离窗口顶端的距离和js获取浏览器可视化窗口的大小,在这儿做一个整理保存:    一、jQuery获取的相关方法 Js代码   jquery 获取滚动...

碎片为什么会导致mysql查询访问变慢

学习笔记,反思

电脑用久了就会变慢。教你补救的方法

电脑用久了就会变慢。教你补救的方法 谁都希望计算机一开机就可以立即进入Windows 系统而不用等待,或者是系统在使用的时候不会越来越慢,但由于种种原因常常使这些愿望不能实现,甚至一开机就死机或者...

手机浏览器判断,窗口宽度,获取当前页面的顶端到页面顶端的距离

//如果是手机浏览器,则跳到手机页面 var sUserAgent= navigator.userAgent.toLowerCase(); var bIsIpad= sUserAgent...

解决 php提交表单到当前页面,刷新会重复提交 的问题

下午有一个朋友问我这个问题,其实解决办法很简单: 只需要在表单里生成一个token(随机字符串),然后用个input装起来,设置hidden。第一次post处理完数据后把token存入session...

在Web页面中实现数据表格的排序功能(全部数据,非当前页)

在数据分页以后,点击表头,希望数据能在后台排序(数据库order by排序),然后返回当前页。

IE浏览器只能打开http协议的网站,所有https协议的网站都打不开,而且会重定向到其他页面

经查证及实践发现是由于IE浏览器的参数被更改导致的。 解决办法: 1.打开IE浏览器菜单, 2.打开IE浏览器选项, 3.选择Internet选项中的高级, 4.找到并勾选“使用TSL  ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)