【发布时间】:2011-05-13 16:23:02
【问题描述】:
谁能解释一下是否有办法使用 javascript/jquery 区分浏览器关闭和刷新事件。
基本上,如果用户关闭选项卡,我需要注销用户。
我尝试使用 jQuery .unload()。但这会触发刷新和表单提交。我尝试在表单提交期间分配一个全局变量并避免使用 .unload() 。但是如何避免刷新,或者是否有任何其他解决方法可以实现这一点..我想知道是否只有在关闭窗口(而不是选项卡)的情况下才能做到这一点。
【问题讨论】:
-
我认为只有卸载事件
-
您可能必须尝试找出是谁在要求关闭窗口。如果源是按钮提交,那么不要注销..?!或者如果页面重新加载,一些逻辑可以直接重新登录?但最好的办法是保留某种 httpSession
-
这可能用 cookie 更好地实现:刷新将保留 cookie,关闭将结束会话。然后使用 cookie 变量来确定你想要做什么。
-
是的,还是饼干!我总是忘记他们
-
你可以检测到用户的F5按钮,关于它,但是使用服务器端传递给js的referer url,看看它是否是你的域
标签: javascript jquery