我编写了一段代码来检测用户是否要离开浏览器窗口。 (就像锁定浏览器一样)
window.addEventListener('blur', onBlur);
如果窗口失去焦点,我尝试过的大多数笔记本电脑设备都会成功触发 onBlur 函数。 但有些笔记本电脑在全屏显示时不会触发 onBlur 功能。到目前为止,我仅在使用 Intel Iris GPU 的 HP 笔记本电脑上发现此问题。
我也尝试将模糊事件添加到 document.body 中。没成功。
监听
blur
事件并不是完美的解决方案,因为(正如你所写的)你在不同的浏览器中得到不一致的结果。
检测用户是否在页面上的更可预测和标准的方法是使用
addEventListener("visibilitychange", onVisibilityChange)
,您可以在 event.visibilityState
中观察当前页面状态