我的一个网页中有一些复选框,此页面必须每 1 分钟刷新一次,以解决一些数据一致性问题。
我正在使用window.sessionStoage
保留已选中的复选框,以便用户不会丢失页面刷新时已选中的框。
但是我想清除sessionStorage
用户何时离开该页面(不一定离开我的网站,可能会转到同一网站上的另一个页面),如果我使用该onunload
事件,那么存储将被清除以防万一的刷新也。
是否有任何其他事件或任何解决方法可以帮助我实现这一目标。
我的一个网页中有一些复选框,此页面必须每 1 分钟刷新一次,以解决一些数据一致性问题。
我正在使用window.sessionStoage
保留已选中的复选框,以便用户不会丢失页面刷新时已选中的框。
但是我想清除sessionStorage
用户何时离开该页面(不一定离开我的网站,可能会转到同一网站上的另一个页面),如果我使用该onunload
事件,那么存储将被清除以防万一的刷新也。
是否有任何其他事件或任何解决方法可以帮助我实现这一目标。
您是否可以尝试将当前页面的路径/名称保存在会话存储中,并在页面的每个初始化时检查页面名称是否等于会话存储中的名称。如果没有,你可以清除它。
对于您的特定情况,窗口事件可以派上用场。因此您可以对模糊和焦点事件做出反应,因此离开浏览器选项卡会导致blur
事件。
$(window).blur(function(){
//clear session
});
$(window).focus(function(){
//maybe some code to re-init session data
});