m有嵌套SetInterval的問題。 我的目標是重複顯示等間隔塊的動畫。 因此,我的第一次迭代順利進行,每個塊以相同的間隔出現,然後全部按計劃消失。 但問題從第二次迭代開始。 他們開始隨機顯示並以完全不同的時間間隔顯示。 這裏是我的代碼,你可以自己複製它,看到的行爲:嵌套setInterval問題
<style type="text/css">
#wrap{width:700px; min-height:700px; margin:0 auto; }
#wrap div+div,#wrap div+div+div,#wrap div+div+div+div{width:70px; height:70px; position:absolute; display:none;}
#wrap div+div{top:340px; left:370px; background-color:#2e9555 }
#wrap div+div+div{top:340px; left:470px;background-color:#dfe766; }
#wrap div+div+div+div{top:340px; left:570px; background-color:#1a3c65;}
</style>
<script type="text/javascript" src="jquery-1.6.2.min.js"></script>
<script type="text/javascript" >
$(function(){
popups();
});
var y;
setInterval(popups,1200);
function popups(){
var x=1;
y =window.setInterval(function(){ popUpBuble(x); ++x;}, 1200);
};
function popUpBuble(index){
if(index<4){
$('#wrap div:eq('+index+')').fadeIn('slow');
}
else{
window.clearInterval(y);
$('#wrap div:lt(4)').delay(3000).fadeOut(1000);
}
}
<body>
<div id="wrap">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
</body>
任何想法如何修復錯誤,以及如何你最小化的setInterval採取的資源。 它每秒都會增加內存使用量。
什麼是'Popups()'? –
對不起,當複製代碼似乎我不小心刪除了名稱。它現在已經修復了! – kidwon
既然人們已經回答了你,讓我和你的CSS一起合作,這不是一個好習慣,並且對於性能不好的人來說有一個奇怪的組合選擇器,也不鼓勵使用id,因爲它使得它的可重用性更低。類是使用CSS時要走的路。 – Felipe