2012-08-04 38 views
2

我有一些jQuery代码循环通过一系列的div。我拥有它,所以当前div淡出,然后下一个div淡入。问题在于第一次过渡,可见的div不会淡出,它会消失。在第一次转换之后,其余的转换顺利进行并具有适当的淡入/淡出运动。以下是的div的例子:第一个转换不顺利jQuery淡入/淡出

<div id="testimonials"> 
    <div class="testimony current"> 
     <p>Text1</p> 
    </div> 
    <div class="testimony"> 
     <p>Text2</p> 
    </div> 
</div> 

而下面是jQuery的的转换:

$(document).ready(function() { 
    var cycle = window.setInterval(next, 6000); 

    function next() { 
     $('#testimonials .current').removeClass('current').fadeOut(500).next().add('#testimonials div:first').last().fadeIn(2000).addClass('current'); 
    } 
}); 

你可以看到在尴尬的第一次转型:http://jrubins.webfactional.com/tamid/vision.php

回答

1

更改顺序拨打​​和removeClass()方法,试试这个:

function next() { 
    $('#testimonials .current').fadeOut(500, function(){ 
     $(this).removeClass('current') 
    }).next()... 
} 
+0

这似乎没有区别... – jrubins 2012-08-04 21:42:06

+0

@jrubins你试过了吗? – undefined 2012-08-04 21:42:56

+0

是的,如果你检查该网站,你会看到代码更新了你的建议,但效果相同 – jrubins 2012-08-04 21:43:43