0
我一直在努力解決how to close session when browser/tab is closed。繼丹尼爾梅洛的回答+設置會議的coockie TTL爲0,我差不多已經準備好了,但丹尼爾的提示是對於輸入類型= [按鈕]不起作用。關閉瀏覽器/選項卡上的會話關閉
var validNavigation = false;
function endSession() {
document.cookie = 'MYOWNSESSID=; path=/';
}
function okEvent(){
validNavigation = true;
}
function wireUpEvents() {
window.onbeforeunload = function() {
if (!validNavigation) {
endSession();
}
}
$("a").bind("click", okEvent);
$("form").bind("submit", okEvent);
// that's my adds that don't work
$(":button").bind("click", okEvent);
$(":button").bind("submit", okEvent);
$(":button").onclick= okEvent;
}
// Wire up the events as soon as the DOM tree is ready
$(document).ready(function() {
wireUpEvents();
});
在卸載發生前如果將事件標記爲有效的關鍵。我試圖鉤住按鈕,但沒有成功。 jquery選擇器工作正常,我檢查$(':button')。長度是> 0. 當然,我失去了一些東西,但無法找到它。
您的代碼沒有錯......實際上,您不需要添加,因爲您在表單上的提交事件中調用了「okEvent」函數。無論如何,你是否可以在okEvent中加入並警示以檢查它是否實際設置了標誌? – ifaour 2010-12-22 20:49:28
謝謝ifaour。你所追求的就是我所做的。我在okevent()上放了一個提示,所以我知道它何時被調用,除了輸入類型[按鈕]之外,它工作正常。 – 2010-12-23 15:25:42