簡體   English   中英

卸載前事件

[英]Event beforeunload

當關閉我的應用程序的導航或選項卡時,我需要使用ajax關閉用戶會話。 為此,我正在使用事件beforeunload,問題是當我用F5(cmr + r,ctrl + r)重新加載頁面時,此導航打開了警告對話框,我不需要這個。

$(window).bind('beforeunload',function (e) {
   var message = 'Are you sure you want to leave?';
   return message;
 }

$(window).bind('unload', function () {
  var dataStatus = $('button[name="status"]').attr('data-status');
  if (dataStatus == 'online') {
    var req = $.ajax({
      url: 'mi-url',
      type: 'POST',
      async : true,
      data: {data: JSON.stringify({user_id: <?php echo $user->getId() ?>})},
      dataType: "JSON"
    });
  }
});

等待回復,謝謝。

您無法區分關閉標簽和標簽卸載/重新加載。 您可以設置5分鍾間隔或某個有意義的時間間隔,而不是以前的方法,然后向服務器發送有關會話的通知。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM