我正在跟踪我的应用程序的 javascript 报告的一些高得离谱的加载时间,并发现当窗口位于后台或显示屏关闭时,Android(和 iOS)会暂停一些 JavaScript 执行。
在Android上,我发现我可以使用window.onfocus
and onblur
事件来检测应用程序何时切换到后台(并且js执行很快就会暂停,至少对于新脚本而言),但我找不到一种方法来检测屏幕何时打开或关闭。这可能吗?
(在 Safari 上,我得到了类似的结果,除了onfocus
and onblur
没有可靠地发射。)
有几个选项可以检查它:
Using 可见性API https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API
Using focus
and blur
用于检测浏览器选项卡可见性的事件:
window.addEventListener("focus", handleBrowserState.bind(context, true));
window.addEventListener("blur", handleBrowserState.bind(context, false));
function handleBrowserState(isActive){
// do something
}
- 使用定时器,如上所述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)