[HTML 5] Page Visibility API

const initPageVisibility = () => {
  setInterval(() => console.log(document.visibilityState), 1000)
}

if ('visibilityState' in document) {
    initPageVisibility()
}

 If you click other tab, the current tab should be in `hidden` state, otherwise will be in `visible` state.

 

visibilitychange event 

const initPageVisibility = () => {
  const handleVisibilityChange = () => {
      console.log(e.target.visibilityState); // the same
      console.log(document.visibilityState); // the same
      
      const {visibilityState} = e.target;
      
      switch(visibilityState) {
          case 'hidden': {
              console.log('document is hidden!')
              break;
          }
          case 'visibile': {
              console.log('document is visible!')
              break;
          }
      }
  }
  document.addEventListener('visibilitychange', handleVisibilityChange);
}

if ('visibilityState' in document) {
    initPageVisibility()
}

 

posted @   Zhentiw  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-06-24 [Spring] Spring Data JPA
2019-06-24 [Cypress] Assert on XHR Requests in Cypress
2019-06-24 [Cypress] Assert on Database Snapshots in Cypress
2018-06-24 [Angular] Remove divs to Preserve Style and Layout with ng-container in Angular
2016-06-24 [Angular 2] Handle Reactive Async opreations in Service
2015-06-24 [Javascript + rxjs] Introducing the Observable
2015-06-24 [Javascript] IIFE
点击右上角即可分享
微信分享提示