循环通过一组元素和动画

时间:2013-09-23 04:16:28

标签: javascript jquery html css animation

我有一组元素,当我点击特定按钮时,我想使用jquery一次动画一个元素。

这是我的html标记。

<ul class="image-wrapper">
                <li class="image">
                    <img src="images/slider-image-1.jpg">
                </li>
                <li class="image">
                    <img src="images/slider-image-1.jpg">
                </li>
                <li class="image">
                    <img src="images/slider-image-1.jpg">
                </li>
            </ul>

            <div class="left-arrow"></div>
            <div class="right-arrow"></div>
            <div class="overlay"></div>
            <div class="menu"></div>

这是我为每个元素设置动画的jquery代码。

$('.left-arrow').click(function(){
        $('.image').first().animate({
            width:'0px'
        },1000);
    })

但问题是在第一个动画之后,我无法继续其余的动画!如何循环遍历元素以在每个元素中滑动。

2 个答案:

答案 0 :(得分:0)

你需要保留并索引

var index = 0, $imgs = $('.image');
$('.left-arrow').click(function(){
    $imgs.eq(index ).animate({
        width:'0px'
    },1000);
    index = index == 0 ? $imgs.length - 1  : index - 1 ;
})

演示:Fiddle

答案 1 :(得分:0)

尝试jquery的.each()

$('.left-arrow').click(function(){
        $('.image').each(function(){
          $(this).animate({
            width:'0px'
        },1000);
    })