js区分浏览器关闭和刷新方案
判断浏览器关闭和刷新
需要判断浏览器关闭时执行事件比如删除缓存等,在刷新时不做处理。
查找到两个window.onunload和window.onbeforeunload事件,但是刷新时都会执行。
window.onunload,只有在onbeforeunload时记录时间,在onunload时判断,如果时间<=4ms,时间较短则为关闭事件,反之刷新时间间隔长,则为刷新事件
解决方案
let initTime = +new Date()
let showTime = 0
window.onbeforeunload = function(){
showTime = +new Date()
}
window.onunload = function(){
const timeSam = showTime - initTime
if(timeSam<=4){
//something 关闭
}else{
//something 刷新
}
}
版权声明:
作者:wuhou123
链接:https://wuhou.fun/84.html
来源:前端网
文章版权归作者所有,未经允许请勿转载。

共有 0 条评论