某些笔记本电脑设备在窗口全屏显示时不会触发 Javascript 模糊事件函数

问题描述 投票:0回答:1

我编写了一段代码来检测用户是否要离开浏览器窗口。 (就像锁定浏览器一样)

window.addEventListener('blur', onBlur);

如果窗口失去焦点,我尝试过的大多数笔记本电脑设备都会成功触发 onBlur 函数。 但有些笔记本电脑在全屏显示时不会触发 onBlur 功能。到目前为止,我仅在使用 Intel Iris GPU 的 HP 笔记本电脑上发现此问题。

我也尝试将模糊事件添加到 document.body 中。没成功。

javascript reactjs onblur lockdown
1个回答
0
投票

监听

blur
事件并不是完美的解决方案,因为(正如你所写的)你在不同的浏览器中得到不一致的结果。

检测用户是否在页面上的更可预测和标准的方法是使用

addEventListener("visibilitychange", onVisibilityChange)
,您可以在
event.visibilityState

中观察当前页面状态
© www.soinside.com 2019 - 2024. All rights reserved.