重新加载页面时保持计时器(setInterval)运行

2024-05-02

加载网页后,我会通过控制台插入一些 Javscript。我想知道我是否可以使用 Javascript 或 jQuery 重新加载页面(不是从缓存),同时保留我正在运行的 setInterval 。我熟悉 location.reload(),但这会终止它。


当您重新加载页面时,整个页面上下文(包括所有正在运行的 JS)将被完全销毁。你不能保留一个setInterval()在重新加载其主机页面时运行。

您可以使用 cookie、查询参数或本地存储值(查询参数可能是最合适的)为新页面创建一个信号来开始再次运行的间隔。如果您采用这种方式,那么您需要对页面进行编码以查找特定的查询参数,如果找到它,则页面应该启动指定的查询参数setInterval()本身。您甚至可以在查询参数中传递一些数据(例如距离下一个间隔还需要多少时间,等等)。

另一种选择是不实际重新加载页面,而是通过 ajax 调用获取新内容,然后将其插入当前页面来手动刷新内容。这允许当前页面上下文和运行间隔计时器继续运行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

重新加载页面时保持计时器(setInterval)运行 的相关文章

随机推荐