【发布时间】:2014-09-04 14:06:40
【问题描述】:
我有一个系统,我需要知道浏览器何时在一个文件中关闭。该文件在一个会话中被创建和销毁多次。当浏览器关闭以及文件被销毁时,我可以在 window.onbeforeunload 事件中获得控制权。我需要知道浏览器何时关闭。当浏览器关闭时,我需要在服务器上触发注销事件,而不是每次文件被销毁时。我需要在同一个文件中知道这一点。我如何知道在同一事件中浏览器已关闭或文件已被销毁并且已触发卸载事件。我试过的是:
window.onbeforeunload = function(e) {
var e = e || window.event;
if (!(e.clientY > 0) || e.altKey) {
//Logout event
}
}
这会在每次触发 unload 事件时导致注销,而不仅仅是在调用浏览器时。
任何帮助将不胜感激。提前谢谢...
【问题讨论】:
-
当用户关闭浏览器时,这不关你的事。没有“onClose”事件。自动注销只能通过服务器端超时来实现。
-
是的。我面临的问题是服务器端超时为 60 分钟,如果用户尝试在该时间段内登录,系统将不允许登录,因为同一用户的并发会话已被禁用。如果您有什么建议,那将很有帮助。谢谢。
标签: javascript logout