繁体   English   中英

浏览器关闭时注销用户

[英]Logout user when browser close

我想在用户关闭浏览器而不是标签时注销用户。

我知道来自 JS 的 'beforeunload' 事件侦听器,但在关闭选项卡时也会调用它。

我有一个名为 logout() 的 JS function。 当用户关闭浏览器时,我怎么能调用它?

您可以比较关闭事件的时间戳。 浏览器需要更多时间来关闭所有选项卡,因此会有一点延迟。

//Unload Events
$(window).on('unload',function(e) {
  e = e || window.event;

  var timestamp = localStorage.getItem('timestamp')
  if(timestamp !=null && timestamp !=undefined){
    var TimeNow = new Date().getTime(), Difference  = TimeNow - timestamp ;

    if(Difference<20){
      //Browser Closed
      console.log('Browser Closed')
      localStorage.removeItem('timestamp');
 
      //Your logout function
      logout();
    }else{
      //Tab Closed
      console.log('Browser Tab Closed');
      localStorage.setItem('timestamp',new Date().getTime());
    }

  }else{
    //Other Event
    localStorage.setItem('timestamp',new Date().getTime());
  }
});

此检测没有其他解决方案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM