【发布时间】:2018-04-18 18:31:57
【问题描述】:
我有一个简单的脚本,每个用户会话我只需要运行一次。但是在这个会话中,他可以刷新页面,或者转到一个站点上的另一个页面。
我的代码现在看起来像这样,但是如果用户刷新页面(不到 10 秒)或转到另一个页面 - 脚本将永远不会运行:(
var visited = sessionStorage.getItem('visit');
if (visited == null || document.location.href == sessionStorage.getItem('lastPage')) {
setTimeout(function() {
alert('Hello World')
}, 10000
)
sessionStorage.setItem('visit', 1);
};
工作示例:https://codepen.io/zavtraleto/pen/GdRpRZ
我认为这可能与 cookie 有关
【问题讨论】:
-
为什么要超时 10 秒?
-
@Vineesh 这将是一个弹出式表单,其中包含一个关于界面的小调查,因此用户必须在网站上花费时间(超时可能会变长)
-
您想在一个页面中只显示一次弹出窗口吗?还是整个网站导航一次?
-
@Vineesh 在整个网站导航中使用一次
标签: javascript session cookies