关于onbeforeunload方法的触发条件
我要实现的功能是统计用户的下线时间
用global.asax的Session_End统计session失效的话很不准确
所以我用js的onbeforeunload()方法
我查了一下这个方法的触发条件竟然有这么多 我只需要关闭浏览器的时候触发 请问怎么屏蔽其他的触发条件。
触发于:
关闭浏览器窗口
通过地址栏或收藏夹前往其他页面的时候
点击返回,前进,刷新,主页其中一个的时候
点击 一个前往其他页面的url连接的时候
调用以下任意一个事件的时候:click,document write,document open,document close,window close ,window navigate ,window NavigateAndFind,location replace,location reload,form submit.
当用window open打开一个页面,并把本页的window的名字传给要打开的页面的时候。
重新赋予location.href的值的时候。
通过input type=”submit”按钮提交一个具有指定action的表单的时候。
------解决方案--------------------写一个cookie(可以直接用document.cookie),并且不设置它的过期时间(默认就是网页关闭后失效)
你在每个请求里判断一下,这个cookie是否为空,就可以知道有没有关闭浏览器
不过cookie可以人为清除,可以考虑结合Session
------解决方案--------------------------解决方案--------------------直接关闭浏览器貌似js无法捕获!