[英]Html page in a WebView does not fire 'visibilitychange' event when user press home button (iOS 8)
[英]Why does visibilitychange event not fire for Android webview?
我的应用程序有多个Android Web视图,在站点范围内的JS,我有:
window.addEventListener('beforeunload', function() {console.log("beforeunload");});
// subscribe to visibility change events
document.addEventListener('visibilitychange', function() {
console.log('visibility changed!!!');
}
当我(1)点击“主页”按钮进入主屏幕或(2)调用任务切换器继续进入不同的应用程序时, beforeunload
和visibilitychange
都不会触发。
为了澄清,可以正确地在Android Chrome中触发visibilitychange。 网络视图有什么不同?
webview的可见性计算如下:
visible = !paused && (!attached to window || window visible)
换句话说,如果分离webview,则忽略窗口可见状态。 这是因为webview在分离时不知道窗口可见性状态,并且有许多应用程序在分离时使用分离的webview,因此期望分离的webview正常运行,就好像它是可见的一样。
您没注意到的另一个“奇怪之处”是页面可见性与
WebView.setVisibility
如果要从应用程序控制页面可见性,请使用WebView.onPause / onResume。
归功于刘波。 链接
是! 它不是在Android5.1中解雇的,而是在事件focus
和blur
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.