原文地址:https://www.cnblogs.com/dantis/p/9288228.html
原理就是通過頁面標籤切換事件(visibilitychange)來判斷,亦可用戶移動端桌面和app切換。
先看代碼:
var hiddenProperty = 'hidden' in document ? 'hidden' :
'webkitHidden' in document ? 'webkitHidden' :
'mozHidden' in document ? 'mozHidden' :
null;
var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange');
var onVisibilityChange = function(){
if (!document[hiddenProperty]) {
console.log('頁面激活');
}else{
console.log('頁面隱藏');
}
}
document.addEventListener(visibilityChangeEvent, onVisibilityChange);
pageshow和pagehide事件只會在頁面加載和卸載,或者地址欄前進和後退的時候出現,不能檢測到切換桌面的事件。
關閉窗口提示
window.onbeforeunload=function(e){
var e = window.event||e;
e.returnValue=("確定離開當前頁面嗎?");
}