可能重复:
Show and hide divs at a specific time interval using jQuery
我有一个jQuery脚本,它以特定的间隔显示和隐藏div。它工作正常,但我有一个问题,它的显示和隐藏div是圆形的,所以基本上它永远不会停止。 我怎么能停下来?让我们说它在显示3倍的div后停止。
$(function() {
var timer = setInterval( showDiv, 5000);
var counter = 0;
function showDiv() {
if (counter == 0) {
counter++;
return;
}
$('div','#container')
.stop()
.hide()
.filter( function() { return this.id.match('div' + counter); })
.show('fast');
counter == 3? counter = 0 : counter++;
}
});
答案 0 :(得分:2)
使用setTimeout()
和clearTimeout()
代替setInterval()
。
答案 1 :(得分:1)
试试这个:
$(function() {
var timer = setInterval( showDiv, 5000);
var counter = 0;
var showTimes = 3;
function showDiv() {
if (counter ==0) { counter++; return; }
$('div','#container')
.stop()
.hide()
.filter( function() { return this.id.match('div' + counter); })
.show('fast');
if(counter == 3){
counter = 0;
showTimes--;
if(showTimes == 0)
clearInterval(timer);
}else{
counter++;
}
}
});
答案 2 :(得分:0)
将整个代码添加到函数中,并使用时间间隔
在for循环中调用该函数三次答案 3 :(得分:0)
您现在可以使用setInterval
。当您希望计时器停止时,请调用clearInterval
,并将其从setInterval调用中获取的计时器传递给它。如果您愿意,可以在showDiv
功能中执行此操作。