---恢复内容开始---
原理就是通过页面标签切换事件(visibilitychange)来判断,亦可用户移动端桌面和app切换。
先看代码:
1 var hiddenProperty = 'hidden' in document ? 'hidden' : 2 'webkitHidden' in document ? 'webkitHidden' : 3 'mozHidden' in document ? 'mozHidden' : 4 null; 5 var visibilityChangeEvent = hiddenProperty.replace(/hidden/i, 'visibilitychange'); 6 var onVisibilityChange = function(){ 7 if (!document[hiddenProperty]) { 8 console.log('页面激活'); 9 }else{ 10 console.log('页面隐藏') 11 } 12 } 13 document.addEventListener(visibilityChangeEvent, onVisibilityChange);
pageshow和pagehide事件只会在页面加载和卸载,或者地址栏前进和后退的时候出现,不能检测到切换桌面的事件。