---恢复内容开始---
原理就是通过页面标签切换事件(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事件只会在页面加载和卸载,或者地址栏前进和后退的时候出现,不能检测到切换桌面的事件。