循环遍历DIV id数组,并每隔x秒刷新这些DIVS
Loop through array of DIV ids, and refresh those DIVS every x seconds
假设我有4个div:
<div id='blue'></div>
<div id='refresh12'></div>
<div id='red'></div>
<div id='refresh23'></div>
我将页面上以"刷新"开头的每个div放入一个数组中,如下所示:
var divs = $('div[id^="refresh"]');
现在,我想做的是每5秒刷新一次数组中的div。我知道我需要使用SetInterval,但我不确定如何开始循环。此外,div并不是从另一个页面提取内容,而是从同一个页面,只是需要每5秒刷新一次的动态数据。感谢您的帮助。谢谢
使用setInterval
并不总是最好的主意,因为如果您的操作需要很长时间并且处于阻塞状态,那么调用可能会堆积起来。
你可以像这样使用setTimeout()
调用来实现你想要的:
var divs = $('div[id^="refresh"]');
setTimeout(function refreshThem () {
//code to refresh your divs
divs.xy();
setTimeout(refreshThem, 5000);
}, 5000);
或者如果您希望第一次刷新同时运行:
(function refreshThem () {
//code to refresh your divs
divs.xy();
setTimeout(refreshThem, 5000);
})();
基本上,当刷新完成时,会设置一个新的超时,以便在5秒内再次运行相同的代码。
尝试以下操作:
setInterval(function() {
$('div[id^="refresh"]').each(function(inx) {
// update each div here
});
},5000);
您需要做的是类似的操作
setInterval(function(){
$('div[id^="refresh"]').each(function(i,el){
$(el).load('pageURL ' + $(el).prop('id'));
})
}, 500)
或者如某人所言,setTimeout()
$(function(){
var int=self.setInterval(RefreshDivs,5000);
});
function RefreshDivs(){
// do your code to update/ refresh the div content. May be ajax call..
}
相关文章:
- 强制模板刷新ember.js
- 如何通过ajax刷新JSF填充的javascript变量
- 如何解决Yii中的页面刷新问题
- Jquery提交表单而不刷新
- 刷新页面后会出现警报
- 刷新后保留对网页的更改
- 如何在不刷新页面的情况下更新显示框
- 重定向时角度刷新浏览器
- 如何防止jQueryonclick事件中的Ruby方法在页面刷新时执行
- Javascript,输出结果后页面不断刷新
- $(document).height()在刷新时随机化值(Safari 5.1.10)
- 刷新父窗口后无法关闭窗口
- 刷新页面时hasClass不起作用
- X秒后刷新select元素
- chart.series[id].remove()无法刷新高位图表/高位股票中其他系列的图例属性
- 触发媒体查询断点时刷新页面
- 如何刷新列表框内容onclick或blur事件
- 如何在火狐浏览器中禁用F5和刷新
- 刷新后,setTimeout将工作或不工作
- 循环遍历DIV id数组,并每隔x秒刷新这些DIVS