js判断移动端页面按home键切换到桌面事件

时间:2025-01-06 12:34:38

---恢复内容开始---

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