我试过了window.onbeforeunload
,但似乎没有用。有什么帮助吗?
我有一个用于跟踪用户是否已登录的Cookie。
function handleLoginRegSuccess(){
$.cookie('loginStatus', "ON", { expires: 1, path: '/'});
showBusyMessage();
goToIndex();
}
这是我尝试过的,但它不起作用。
window.onbeforeunload = function(e) {
if(userLoginStatus()=="ON"){
requestLogout();
$.removeCookie('loginStatus');
return "test";
}
};
答案 0 :(得分:2)
因此,要直接回答你的问题,onbeforeunload需要一个实际工作的返回值,此时它会提示用户使用该字符串,他们将获得一个确认框。
此堆栈中的更多详细信息答案:How can I override the OnBeforeUnload dialog and replace it with my own?
您可能会考虑的是,有一个会话超时可以将该人员记录下来,或者(更积极地)来自客户端的心跳记录(通过ajax)。当心跳未能触发时,它们会被注销。
你也可以使用onunload事件,如果你没有尝试与用户进行交互(因为你的示例代码似乎没有):http://msdn.microsoft.com/en-us/library/ie/ms536973(v=vs.85).aspx