在 JavaScript 中,是否可以检测 Android 和 iOS 浏览器中的屏幕何时关闭

2024-04-25

我正在跟踪我的应用程序的 javascript 报告的一些高得离谱的加载时间,并发现当窗口位于后台或显示屏关闭时,Android(和 iOS)会暂停一些 JavaScript 执行。

在Android上,我发现我可以使用window.onfocus and onblur事件来检测应用程序何时切换到后台(并且js执行很快就会暂停,至少对于新脚本而言),但我找不到一种方法来检测屏幕何时打开或关闭。这可能吗?

(在 Safari 上,我得到了类似的结果,除了onfocus and onblur没有可靠地发射。)


有几个选项可以检查它:

  1. Using 可见性API https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API

  2. Using focus and blur用于检测浏览器选项卡可见性的事件:



window.addEventListener("focus", handleBrowserState.bind(context, true));
window.addEventListener("blur", handleBrowserState.bind(context, false));

function handleBrowserState(isActive){
    // do something
}
  
  1. 使用定时器,如上所述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 JavaScript 中,是否可以检测 Android 和 iOS 浏览器中的屏幕何时关闭 的相关文章

随机推荐