我正在处理一个项目,其中图像上的文字必须每小时更改一次。
我使用javascript setinterval()
,但不知道它是如何工作的。
如果网站的用户重新加载页面,那么间隔会重新启动吗?
如果是,我怎么能阻止它重新启动?
答案 0 :(得分:1)
是的,当用户重新加载时,间隔将重新启动。您可以使用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秒更新一次)
答案 1 :(得分:0)
当用户加载网页时,setinterval将启动,但当他们刷新或导航到其他页面时,setinterval将不会继续计数。
执行此操作的最佳方法是在javascript中使用日期。
所以你可以做类似的事情。
上午9点 - 显示此图片 上午10点 - 显示此图像 等...
答案 2 :(得分:0)
识别浏览器刷新事件并将间隔存储在缓存或本地存储中。一旦浏览器 刷新完成恢复间隔值