客户端请求了cookie功能,如果浏览器未关闭,则cookie有30分钟到期,但如果/当用户关闭浏览器时需要删除它。
以下是我将要做的事情:
delCookie = function() {
document.cookie = 'cookieName=;expiration=Thu, 01-Jan-70 00:00:01 GMT;';
};
$(window).unload(function() {
delCookie();
})
然后我意识到当用户导航到另一个站点时,它还会触发.unload,这将删除cookie而不是保持cookie过期。
当浏览器关闭或用户离开网站时,有什么方法可以使用javascript检测到吗?
答案 0 :(得分:2)
我认为这不可行,但这里有一个可供您使用的窗口事件列表。
* onafterupdate
* onBeforeunload
* onBeforeupdate
* onBlur
* onClick
* ondblclick
* onError
* onerrorupdate
* onFocus
* onhelp
* onkeydown
* onkeypress
* onkeyup
* onLoad
* onmousedown
* onmousemove
* onmouseout
* onmouseover
* onmouseup
* onragstart
* onreadystatechange
* onresize
* onrowenter
* onrowexit
* onscroll
* onselectstart
* onUnload
其中一些可能已经过时了。
答案 1 :(得分:1)
unload
是检测用户离开您网站的标准方法(关闭窗口/标签或导航离开)
您需要记住,如果用户导航,您将无法再从您的应用程序运行代码。
要回答您的问题 - 您发布的代码是您在方案中获得的最大灵活性。