怎么用js监听界面(安卓和IOS)的进入,返回和退出?

新手上路,请多包涵

问题描述

现在在做一个企业微信的小程序,需要监控每个页面的进入时间以及离开时间,(返回到上一个页面,也要计算)

问题出现的环境背景及自己尝试过哪些方法

一开始我用的是window.onload和window.beforeunload方法监听界面的进入和离开,后来发现如果直接关闭小程序的话,window.beforeunload没有执行,并且IOS返回的时候,并不会触发window.onload
然后我改用window.onpageshow和window.onpagehide事件,这时候安卓系统是没有什么问题,能正常执行了,但是IOS并不会触发window.onpagehide事件,但是我用谷歌浏览器的开发者工具模拟iPhone 12执行又没问题,而在苹果手机上就不行

相关代码

//进入界面时间
let beginTime;
//退出界面时间
let endTime;

//监听界面展示事件,用户进入网页时触发
window.onpageshow = function(){
    //记录开始进入界面时间
    beginTime = getNow();
}

//监听界面离开事件,用户离开网页时触发
window.onpagehide = function () {
    //记录退出界面时间
    endTime = getNow();
    //离开界面时,保存统计信息
    this.addStatistics();
}

你期待的结果是什么?

我希望可以用js同时监控苹果和安卓系统的进入,返回以及退出事件
阅读 1.6k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题