PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Ajax
[问题] 请问如何使用js或jQ判断重整页面及关闭视窗
楼主:
mrker
(ꬮ....)
2014-06-12 00:00:25
如题,使用jsp开发,
最近遇到一个棘手的问题,
原本的设计是,当使用者刷新页面或关闭视窗时,
会清除session,而入口的servlet会判断是否有session ID,如果没有便会转到登入页,
现在问题来了,User开了两个IE页签,因为IE 8+是共用session,
因此,若其中一个页签刷新页面或关闭视窗,便会清除session,
另一个页签连带受影响,现在的想法是,在server端做个cache,记录session id & 登入数,当登入时,登入数加一,登出或关闭视窗时则减一,
并判断此session Id 的登入数是否为零,若为真则销毁此session,而刷新页面会有其他处理方式,
问题来了,
(1) 如此分开判断关闭与刷新的事件
(2) 如何完善地判断是刷新事件 (目前是利用座标判断
(3) 是否有更好的方法解决这个需求
(4) 如果上一页的事件又该如何,这会变成User可以回上一页再触发一次事件
在web开发上小弟还算新手,烦请版上高手能给予指点!谢谢!
作者:
mrbigmouth
(大嘴先生)
2014-06-12 00:04:00
我的经验是除非你能保持持续性连接(像socket.io)不然直接做成“一段时间无操作后登出”是比较实际的不然就是javascript内部的变量判定连接 这样自然而然会单视窗单帐号 但非Single Page App应该不能这样做
作者: up9cloud (九天)
2014-06-12 10:23:00
既然都让使用者多开了,建议你直接让session时间到过期然后再思考,你原本设计刷新清session的原因,要怎么解
楼主:
mrker
(ꬮ....)
2014-06-12 21:13:00
今天试了几个方法,但多少都有点问题,看来真的不好解不知道有没有方法直接将重刷的事件导掉
作者:
tomin
(Schrödinger's cat)
2014-06-12 21:21:00
用onbeforeunload()可以知道有刷新、关闭
继续阅读
Re: [问题] setInterval 的最快时间周期
tomin
Re: [问题] 如何补捉jQ Mobile外部连结失败的例外?
tomin
[问题] 如何补捉jQ Mobile外部连结失败的例外?
dream1124
[问题] FormData 无法append资料
powermaxman
[问题] hiddenfield valuechanged event
OOQOO
[问题] 一个弹出视窗的功能
joedenkidd
[问题] JS 改用marginLeft后的速度变化
elsa0116
Re: [问题] IE function 未定义 chrome可以run
chrisannie22
Re: [问题] javascript的执行顺序?
chrisannie22
Re: [问题] ui-widge开头的CSS
chrisannie22
Links
booklink
Contact Us: admin [ a t ] ucptt.com