浏览器窗口切换触发事件(多窗口用户同步退出)

3 篇文章 0 订阅
3 篇文章 0 订阅

前几天在前端开发的时候遇到一个需求场景:用户打开了窗口A 和窗口B,当用户在窗口B退出到登陆页面了,那么A窗口也要同步退出到登录页面。这样的需求,第一想到的就是使用websocket,当窗口B退出,通知A也退出。但是用websocket代价有点大,涉及到后端,事件紧。最终考虑,但B窗口退出,用户切换到A窗口,再主动退出。

浏览器窗口切换事件

document.addEventListener("visibilitychange", () => {
     // visible-显示,hidden-隐藏
      if (document.visibilityState === "visible") {
       
      }
    });

我是再本地localstorage存了一个标志,当用户退出,本地标志清除,然后再有一堆判断逻辑。

 document.addEventListener("visibilitychange", () => {
     // '窗口切换事件激活visible-显示,hidden-隐藏
      if (document.visibilityState === "visible") {
      //下面就是一堆判断用户是否在线的逻辑
        //.......
      }
    });

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值