关于网页计时暂停
答案:1 悬赏:0
解决时间 2021-12-21 15:37
- 提问者网友:若相守£卟离
- 2021-12-21 08:12
请问..有办法让网页的倒计时暂停吗 有个网上的作业倒计时只给半小时 但是有很多题来不及查 求大神告知
最佳答案
- 二级知识专家网友:偏爱自由
- 2021-12-21 09:32
如果我答得好请给我一点分
在html5中document新增了一个事件 visibilitychange,这个事件在页面前台或后台切换时被触发,你所说的问题就简单了,它也有个对应的属性visibilityState,用于检测当前页面的状态值为hidden还是visible。
解法是,在hidden时记录当前时间,在visible时用当前时间减去之前记录的时间就为当前倒计时需要减去的时间,这也就不需要和后台沟通了,或者你直接在visible时刷新页面也行,下面是小样,你测试一下
1234567891011121314151617181920212223242526272829303132333435363738394041424344var b=getTime(); function getTime() { return Date.now(); } document.addEventListener('webkitvisibilitychange',function() { if(document.webkitVisibilityState=='hidden') { b=getTime(); }else { document.body.appendChild(document.createTextNode('间隔:'+(getTime()-b))) } }) document.addEventListener('mozvisibilitychange',function() { if(document.mozVisibilityState=='hidden') { b=getTime(); }else { document.body.appendChild(document.createTextNode('间隔:'+(getTime()-b))) } })
在html5中document新增了一个事件 visibilitychange,这个事件在页面前台或后台切换时被触发,你所说的问题就简单了,它也有个对应的属性visibilityState,用于检测当前页面的状态值为hidden还是visible。
解法是,在hidden时记录当前时间,在visible时用当前时间减去之前记录的时间就为当前倒计时需要减去的时间,这也就不需要和后台沟通了,或者你直接在visible时刷新页面也行,下面是小样,你测试一下
1234567891011121314151617181920212223242526272829303132333435363738394041424344var b=getTime(); function getTime() { return Date.now(); } document.addEventListener('webkitvisibilitychange',function() { if(document.webkitVisibilityState=='hidden') { b=getTime(); }else { document.body.appendChild(document.createTextNode('间隔:'+(getTime()-b))) } }) document.addEventListener('mozvisibilitychange',function() { if(document.mozVisibilityState=='hidden') { b=getTime(); }else { document.body.appendChild(document.createTextNode('间隔:'+(getTime()-b))) } })
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯