javascript - 我想在用户进入网站 3 分钟后弹出一个窗口

标签 javascript jquery asp.net

正如标题所说,我想在用户进入网站 3 分钟后弹出一个窗口。问题是因为用户不会在单个页面上停留 3 分钟。我不能使用javascript。因为他可能会导航到我网站上的不同页面。我尝试使用 setTimeout,但如果我导航到另一个页面代码再次刷新,它就不会工作。

最佳答案

听起来像是 sessionStorage 的一个很好的用途:

  1. 在初始页面加载时,检查 sessionStorage 项是否存在
  2. 如果项目不存在,用当前日期/时间填充它
  3. 如果该项目确实存在,请使用 setInterval 轮询并比较时间,比如每 100 毫秒一次。如果 3 分钟过去了,弹出消息。

sessionStorage 值将在页面和页面重新加载时保持不变。

例子:

// Save date to sessionStorage
sessionStorage.setItem('your-key', new Date());

// Get saved date from sessionStorage
var date = sessionStorage.getItem('your-key');

如果您使用此方法,您可能希望回退到本地存储,然后是 cookie。

关于javascript - 我想在用户进入网站 3 分钟后弹出一个窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34541596/

相关文章:

asp.net - 如何在 ASP.NET MVC 中编写更少的代码来进行 CRUD?

javascript - Firebase 响应取决于 Firestore 查询不起作用

javascript - 表单 onsubmit 不起作用

jquery - If 语句,作用于被检查的元素

javascript - Js 获取 URL 并根据 select form 更改其参数

c# - 有哪些网站提供有关 ASP.NET (C#) 的免费视频教程?

javascript - AjaxControl工具包:TabPanel

javascript - 如何使用 meteor 创建登录系统?

javascript - 如何解决去抖用户输入的竞争条件?

javascript - Vuejs 中的表格过滤器