巧用sessionStorage判断页面是关闭还是刷新?

2025-04-12 23:32:05
推荐回答(1个)
回答1:

可能大家会有很多种方式可以实现,但是我今天给大家分享的一个纯前端的实现。\x0d\x0a\x0d\x0a全部代码也就这么几行,其中用到两个新特性sessionStorage和localStorage。\x0d\x0a\x0d\x0alocalStorage用来存储用户最后访问的url,sessionStorage的变量用来判断用户当前行为是新进系统,还是只是刷新页面。\x0d\x0a\x0d\x0a01 if(sessionStorage.opened){ \x0d\x0a02 console.log('窗口是刷新页面,不是新打开') \x0d\x0a03 }else{ \x0d\x0a04 console.log('窗口是新打开') \x0d\x0a05 //如果获取到历史url,则重定向到历史地址 \x0d\x0a06 if(localStorage.history && localStorage.history != window.location.href ){ \x0d\x0a07 window.location.replace(localStorage.history); \x0d\x0a08 } \x0d\x0a09 } \x0d\x0a10 sessionStorage.setItem('opened','true'); \x0d\x0a11 localStorage.setItem('history',location.href);