[英]visibilitychange fires when page gets reloaded or navigated to other page
document.addEventListener("visibilitychange", onVisibilityChange, {
passive: true,
});
即使有人离开我的页面,这也会触发。 当然这是合乎逻辑的。 但是有没有办法检查是否有人导航离开?
编辑:我想要听的是用户切换到另一个选项卡或将 window 放在后台。 这与 visibilityChange 一起工作,但它也会在用户重新加载页面或在历史记录中来回导航时触发。 但这是我不想触发事件时的行为
您可以使用 setTimeout,setTimeout 中的代码不会在重新加载时运行。
function handleVisibilityChange (e) {
setTimeout(() => {
if (document.visibilityState === 'hidden') {
console.log('HIDDEN')
} else {
console.log('VISIBLE')
}
}, 0)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.