visibilitychange事件用法

1,425 阅读1分钟

什么时候触发: 当用户导航到一个新的页面,改变标签页,关闭标签页,最小化或者关闭浏览器;或者移动端从浏览器换到其他的app。

  • 当页面隐藏时,暂停音乐播放
document.addEventListener("visibilitychange", function() {
  if (document.visibilityState === 'visible') {
    backgroundMusic.play();
  } else {
    backgroundMusic.pause();
  }
});

  • 当页面隐藏时,发送会话结束分析
document.addEventListener('visibilitychange', function logData() {
  if (document.visibilityState === 'hidden') {
    navigator.sendBeacon('/log', analyticsData);
  }
});

Safari不支持。