简单的jQuery动画替换数组中的文本

时间:2012-04-04 15:08:50

标签: jquery animation text

我想用数组中的文本替换'div span'中的文本。我想要这个简单的动画做两件事......

  1. 随机播放或淡化文字
  2. 不断循环
  3. 我有一个小提琴设置,我一直在尝试不同的东西; http://jsfiddle.net/fmdfrank/W47QV/

    任何人

1 个答案:

答案 0 :(得分:5)

使用jquery .queue& .dequeue将每个操作存储在fx队列中。这将使文本更改作为动画队列的一部分。然后检查是否需要循环。

在小提琴中:http://jsfiddle.net/W47QV/4/

$(document).ready(function() {

    var items = ["Two", "Three", "Four", "Five", "Six", "One"],
        $text = $( '#div1 span' ),
        delay = 2; //seconds

    function loop ( delay ) {
        $.each( items, function ( i, elm ){
            $text.delay(delay*1E3).fadeOut();
            $text.queue(function(){
                $text.html( items[i] );
                $text.dequeue();
            });
            $text.fadeIn();
            $text.queue(function(){
                if(i == items.length-1){
                    loop(delay);   
                }
                $text.dequeue();
            });
        });
    }

    loop(delay);

});​