0

我有一些跨度标签:

<span data-w="560"></span>
<span data-w="340"></span>
<span data-w="120"></span>

我有一个 jQuery 代码来为每个跨度设置动画,以达到 data-w 属性中预设的目标宽度:

$(document).ready(function(){

    $('span').each(function() {

        $(this).animate({width: $(this).attr('data-w') + 'px'}, 1000);

    });

});

在这里一切正常。

现在我想让每个跨度单独动画,而不是所有跨度一起。

怎么做?可能与队列()?如何?

谢谢。

4

1 回答 1

1

Mayby 你可以创建自己的队列:

var spanW_loop = 0;
var spanW_size = jQuery('#spanW span[data-w]').length;

    function animateSpanW() {
    var spanWidth = jQuery('#spanW').children('span[data-w]').eq(spanW_loop).attr('data-w');
        jQuery('#spanW').children('span[data-w]').eq(spanW_loop).animate({width: spanWidth + 'px'}, 1000, function() {
            spanW_loop += 1;
            if(spanW_loop < spanW_size) {
                animateSpanW();
            }
        });
    }

animateSpanW();

​</p>

于 2012-11-07T23:51:29.867 回答