setInterval()是如何工作的?我可以用它每小时更换一次图像吗

How does setInterval() work? Can I use it to change image every hour?

本文关键字:每小时 一次 图像 我可以 何工作 工作 setInterval      更新时间:2023-09-26

我正在处理一个项目,其中图像上的文本必须每小时更改一次。

我使用javascript setinterval(),不知道它是如何工作的。

如果网站的用户重新加载页面,之后会重新开始间隔吗?

如果是,我该如何阻止它重新启动?

是的,当用户重新加载时,间隔将重新启动。您可以使用Date对象来确定要显示的文本,例如:

var texts = [
   'Hello!',
   'You rock!',
   'Have a nice day.',
   'Welcome :)'
];
var text = texts[Math.floor((new Date).getTime()/3600000)%texts.length];
// text will update every hour (when the page is refreshed)

Demo(修改为每10秒更新一次)

当用户加载网页时,setinterval将启动,但当他们刷新或导航到其他页面时,setinterval将不会继续计数。

最好的方法是在javascript中使用日期。

所以你可以做一些类似的事情。

上午9点-显示此图像上午10点-显示此图像等等。

识别浏览器刷新事件并将间隔存储在缓存或本地存储中。Once浏览器刷新完成恢复间隔值