如何用 javascript 判断浏览器是否处于当前活动窗口
javascript 中,没有直接的方法可以判断浏览器是否处于当前活动窗口。然而,可以使用以下方法来估算浏览器是否处于活动状态:
通过结合 visibilitychange 事件和 focus 事件,您可以大致判断浏览器是否处于活动状态:
window.addEventListener('visibilitychange', () => { if (document.visibilityState === "hidden") { // 标签已隐藏 } }); const input = document.querySelector('input'); input.addEventListener('focus', () => { // 输入字段已获取焦点 }); input.addEventListener('blur', () => { // 输入字段已失去焦点 });
此方法并不是 100% 准确的。例如,如果用户打开了多个标签,并且浏览器处于后台,那么 visibilitychange 事件将触发,但焦点事件可能不会触发。