2016-01-22 112 views
2

我的應用程序有多個Android的Web視圖,在站點範圍內的JS,我有:爲什麼可見度變化事件不會針對Android webview觸發?

window.addEventListener('beforeunload', function() {console.log("beforeunload");}); 

// subscribe to visibility change events 
document.addEventListener('visibilitychange', function() { 
    console.log('visibility changed!!!'); 
} 

無論beforeunload也不visibilitychange火災時,我(1)熱播的「回家」按鈕轉到主屏幕或(2 )調用任務切換器以轉到不同的應用程序。

爲了澄清,visibilitychange正確地在Android Chrome中被解僱。 webviews有什麼不同?

visible = !paused && (!attached to window || window visible)

換言之,窗口可見狀態被忽略如果網頁視圖是 分離:如計算

回答

0

能見度網頁視圖的。這是因爲webview在分離時並不知道窗口可見性 的狀態,並且有很多應用程序在分離時使用分離的webview,所以需要分離的webview到 函數,就好像它是可見的。

另一個「怪胎」你沒注意到的是頁面visibilityState無關 做WebView.setVisibility

如果你想從你的應用控制頁面的知名度,使用 WebView.onPause /的onResume。

感謝博劉。 link

相關問題