大盗零妖8
2021-02-02 14:49
采纳率: 75%
浏览 92
已结题

js或vue中 如何判断浏览器时关闭还是刷新??

目前接到一个需求如下:

            SpringMVC的项目部署后,接入了客户的统一认证平台(基于token的方式),需要实现一个功能,在浏览器第一次访问系统主页时,需要执行一个ajax后台操作,如果多次打开页签则不执行,刷新也不执行,但是如果关闭所有页签后再次打开第一个时,需要执行,也就是说每次打开该网站主页并且只有一个页签打开时,需要执行一个后台方法。

         目前我准备的做法是:使用localstorage记录打开主页的次数,每次打开一个就增加一个,刷新不做处理,如果关闭一个就再减去一个,这样只能再第一次打开时调用后台方法,

        但是目前遇到一个问题,就是无法判断浏览器时刷新还是关闭,网上找了一些,也没有找到准确的做法,目前主要能兼容谷歌、火狐、360等浏览器就行

      求教各位!

  • 点赞
  • 收藏

2条回答 默认 最新

  • 已采纳

    我百度搜索过,给的方案是判断时间。

    刷新前记录时间,加载后读取时间和现在时间对比,5秒内是刷新,超过5秒就是关闭。

    点赞 评论
  • 天际的海浪 2021-02-02 15:05

    用 sessionStorage 啊,sessionStorage中的数据在关闭所有页签后会自动清除。利用这一特性就可以做到你的需求。
     

    点赞 评论

相关推荐 更多相似问题