如果我在我的网站标题中的脚本中有setTimeout,则可以让它继续运行,因为用户在不重新启动的情况下从一个页面到另一个页面。这是我可以用饼干做的事情吗?有什么我可以看的例子吗?
答案 0 :(得分:1)
你有两个选择。
您将捕获所有锚标记的点击,如果它指向您自己的网站,它会将?time = $ {time}附加到网址。然后,在下一页上,初始化计时器时,在下一页的location.search中分离出时间。请注意,此方法不会保留准确的时间,因为在加载页面和DOM时会有延迟。
Get Parameter from javascript's location.search
这样,您就可以完全重新设计您的网站,这样任何指向您网站内部部分的链接都会实际使用AJAX来查询新内容。这意味着您永远不会更改页面本身,并且永远不会卸载javascript超时。这不是最推荐的做法。这是一个基本的例子:
答案 1 :(得分:0)
使用localStorage保存状态。
设置常规setTimeout。当它启动时,让它从localStorage加载它需要的任何状态数据。每当它更新数据时,它都应该将它保存回localStorage以保持持久性。
如果您需要有关如何执行此操作的具体详细信息,请在评论中留下您的问题,我会尽力回答。
答案 2 :(得分:0)
使用会话cookie来节省您希望setTimeout代码执行的时间。
在每页上:
Date.now() + delayValue
,其中delayValue是以毫秒为单位的等待时间。cookieValue - Date.now()
- 如果> 0,将其用作setTimeout计时器值。如果< = 0,您的计时器功能应该已经运行