在我的Django站點上,當我關閉標籤頁或瀏覽器時,我想自動從站點註銷。我的意思是,當我通過關閉該選項卡而不是使用註銷按鈕關閉網站時,在再次輸入URL後,我想看到用戶已經從網站註銷,強制用戶再次輸入用戶名和密碼。當用戶關閉標籤時註銷
有沒有辦法處理關閉JQuery中的選項卡?
預先感謝您。
編輯:onunload & onbeforeunload事件導致在重新加載頁面時註銷用戶。
在我的Django站點上,當我關閉標籤頁或瀏覽器時,我想自動從站點註銷。我的意思是,當我通過關閉該選項卡而不是使用註銷按鈕關閉網站時,在再次輸入URL後,我想看到用戶已經從網站註銷,強制用戶再次輸入用戶名和密碼。當用戶關閉標籤時註銷
有沒有辦法處理關閉JQuery中的選項卡?
預先感謝您。
編輯:onunload & onbeforeunload事件導致在重新加載頁面時註銷用戶。
將您的註銷碼添加到onunload事件上。
window.onunload = function() {
//logout code here...
}
在JQuery中,您可以使用.unload()函數。請記住,您沒有太多時間來發送Ajax請求,但結果可能無法到達客戶端。
另一個竅門是打開一個小小的新窗口並在那裏處理註銷。
window.open("logout url","log out","height=10,width=10,location=no,menubar=no,status=no,titlebar=no,toolbar=no",true);
如果要禁用關閉窗口(或至少提醒用戶),您可以使用此代碼:
window.onbeforeunload = function(event) {
//if you return anything but null, it will warn the user.
//optionally you can return a string which most browsers show to the user as the warning message.
return true;
}
另一個竅門是繼續ping服務器客戶端每隔幾秒鐘。如果沒有回覆,假設用戶關閉了窗口,瀏覽器崩潰或者網絡問題無論如何都結束了聊天會話。在客戶端,如果您沒有收到此ping包,則可以假定網絡連接或服務器出現問題,並且可以顯示註銷警告(並可以讓用戶再次登錄)。
這應該有助於http://stackoverflow.com/a/13916847/2968762。你可以使用[store.js](https://github.com/marcuswestin/store.js/)代替'localStorage' – Abhi
謝謝:)我想我需要做這些步驟。此外,我預計並假設有一個特殊事件處理「關閉標籤或瀏覽器」。 @Abhi – waterkinq