手记

html5中document新增了一个事件 visibilitychange

在html5中document新增了一个事件 visibilitychange,这个事件在页面前台或后台切换时被触发,它也有个对应的属性visibilityState,用于检测当前页面的状态值为hidden还是visible。

解法是,在hidden时记录当前时间,在visible时用当前时间减去之前记录的时间就为当前倒计时需要减去的时间,这也就不需要和后台沟通了,或者你直接在visible时刷新页面也行,下面是小样,测试一下

      var 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)))
             
            }
        })



作者:竿牍
链接:https://www.jianshu.com/p/3d083c70e6ea


0人推荐
随时随地看视频
慕课网APP