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