Javascript 当前页面(Tab)是否可见

阅读(3260)

有2个属性,1个事件相关。

通过 document.visibilityState 获取当前页面(Tab)的状态值:

  • hidden: 当前页不可见
  • prerender: 当前页在屏幕外加载,但用户不可见
  • visible: 当前页可见
  • unloaded: 页面即将unload,用户正要离开当前页

通过 document.hidden 获取当前是否隐藏的布尔值结果。

通过 visibilitychange 事件监听状态的变化:


document.addEventListener('visibilitychange', function(event) {
    if (!document.hidden) {
        // 页面可见
    } else {
        // 页面不可见 
    }
});

IE10+及其他现代浏览器都支持,更多兼容性http://caniuse.com/#feat=pagevisibility