前端如何检测出刷新动作,F5或者按浏览器刷新动作?
通过页面重载的时间间隔来间接判断页面是否刷新。
window.onunload = function(e){
localStorage.setItem("leaveTime", new Date().getTime());
}
window.onload = function(e) {
const dis = new Date().getTime() - localStorage.getItem("leaveTime");
const flashDis = 0.5 * 1000; // 可调整
if(dis < fleshDis) {
alert("刷新了页面!")
}
}
13 回答13.1k 阅读
8 回答3k 阅读
3 回答1.5k 阅读✓ 已解决
2 回答5.3k 阅读✓ 已解决
5 回答1.6k 阅读
7 回答2.3k 阅读
5 回答1.6k 阅读
performance.navigation
只能判断是刷新还是跳转。我感觉 blur 失去焦点,或者 onkeydown 之类的方法联合起来应该能捕获到用户的动作。
剩下没动作就是浏览器自带的刷新