星五博客

浏览器中判断当前页面前置后置状态(Tab页切出)

document.onvisibilitychange = () => {

        if (document.visibilityState == 'visible') {

          this.timer = setInterval(this.getVideoLoading, 30000)

        } else {

          clearInterval(this.timer)

        }

      }


因为谷歌浏览器的性能优化机制,会在页面后置,也就是TAB页切换到其他页面时,对后置页面进行休眠操作,会影响setInterval和setTimeout的执行效果,可以通过这个方法在页面后置时停止任务执行,前置时恢复。