如何实现跨页计时器?

时间:2015-02-02 20:04:39

标签: javascript html jsp timer frontend

我正在尝试在我的网站上实现预订系统。我想允许用户预订终端实体10分钟。完全,流量足够大,可以翻几页 当用户在此流程上导航时,他应该看到他必须完成操作的时间。

请告诉我如何实现跨页计时器。

2 个答案:

答案 0 :(得分:1)

我认为最直接的方法是在用户的localStorage中创建一个包含事务开始时间的cookie或项目。加载页面后,检查是否存在此值,并将其与当前时间(如果存在)进行比较。

答案 1 :(得分:0)

您可以使用setTimeoutsetInterval在浏览器中运行计时器。但是,如果浏览器窗口未处于活动状态,则无法保证继续执行。如果用户隐藏浏览器或转到另一个应用程序,则应用程序无法确定计时器是否仍在运行。

有一种称为网络工作者的新线程规范,可能有助于缓解setTimeout问题。

https://developer.mozilla.org/en-US/docs/Web/API/Worker

作为替代方案,我建议将开始时间存储在服务器上,并通过轮询HTTP请求不断检查当前时间。或者也许只是在提交之前检查一下。

或者如@sholanozie所述,将其存储在浏览器Cookie中,然后继续检查。