前端记录用户页面停留时间
作者:互联网
1.网上大多数都是 beforeunload 和 unload 还有 vue的生命周期 destroyed, 都试过了, 在移动端 都没有用!!!!!
2.移动端监听不到beforeunload和 unload
3.在本人锲而不舍的找寻下(其实也就两三个小时),找到了一个较为满意的答案,既然移动端监听不到beforeunload,找寻一个能取代的API就好,上代码
window.addEventListener('pagehide', () => {localStorage.setItem("timestamp",'77778899998')
})
4.没错,就是pagehide,完美代替,至此大功基本告成
补充说明:
1、pageshow事件:这个事件在用户浏览网页时触发,pageshow 事件类似于 onl oad 事件,onload 事件在页面第一次加载时触发, pageshow 事件在每次加载页面时触发,即 onl oad 事件在页面从浏览器缓存中读取时不触发。
2、pagehide事件:该事件会在用户离开网页时触发。离开网页有多种方式。如点击一个链接,刷新页面,提交表单,关闭浏览器等。pagehide 事件有时可以替代 unload事件,但 unload 事件触发后无法缓存页面。
参考地址:https://blog.csdn.net/weixin_44431295/article/details/98876528
标签:pagehide,停留时间,触发,前端,unload,onload,事件,页面 来源: https://www.cnblogs.com/520BigBear/p/14030132.html