所以使用jquery,我在一段时间内得到了一些javascript来淡化一系列div。现在我想淡出前一个div。我是否正确将淡出功能作为淡入功能的回调?
所以它看起来像这样。
<script type="text/javascript">
$(function() {
$("div").each(function(i, e) {
$(this).delay(i*400).fadeIn(
$(this).delay(i*400).fadeOut);
});
});
</script>
这是对的还是我做错了?
答案 0 :(得分:3)
你有一些语法问题,回调应该是这样的:
$("div").each(function(i, e) {
$(this).delay(i*400).fadeIn(function() {
$(this).delay(i*400).fadeOut();
});
});
答案 1 :(得分:2)
如果您需要循环并修复语法,请尝试此操作。
var arrDivs = $("div").get(); //Get all the divs into an array
function fade()
{
var div = arrDivs.shift(); //get the top div
var $this = $(div);
arrDivs.push(div); //push it to the end for cycle to repeat
$this.delay($this.index()*400).fadeIn(function(){ //get the index to calculate the delay time.
$this.delay($this.index()*400).fadeOut(function(){
window.setTimeout(fade,1000);
});
});
}
fade();