javascript - 延迟一个接一个地动画 sibling

标签 javascript jquery html css

我正在尝试创建动画功能,我点击让我们说列表中的最后一个 child , 然后我需要将所有 sibling 一个一个地向左移动。所以它会像波浪一样。

例子: 点击 child nr.4,sibling nr.1 开始向左移出屏幕,并有一个短暂的延迟 sibling nr.2 等等。所以它会像波浪效应。

我创建了一个 JSFiddle:http://jsfiddle.net/10kjn00z/2/

  $('#menu li').click(function(){ 
    setVar(this);
        $(this).siblings().animate({left: '-'+tWidth+'px'}, function() {
            $(this).animate({top: '-'+onSet+'px'});
        }); 
});

这个 fiddle 只是我的代码的一小段,所以这里可能有没有使用的代码。但我会明白的。

谢谢

最佳答案

您可以使用setTimeout() 函数来实现您想要的。

这是一个如何做到这一点的例子:

$('#menu li').click(function(){     
    var speed = 100;
    setVar(this);
    var siblings = $(this).siblings();
    $.each( siblings, function(index,value){
        setTimeout(function(){$(value).animate({left: '-'+tWidth+'px'});}, index*speed);
    });

    var current = this;
    setTimeout(function(){$(current).animate({top: '-'+onSet+'px'})}, 400-speed+siblings.length*speed);     
});

查看jsFiddle

关于javascript - 延迟一个接一个地动画 sibling ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26003025/

相关文章:

JavaScript Regex - 如何排除匹配中返回的尾随特殊字符?

javascript - 数据分钟检查欧芹不起作用

javascript - 使用Java script/jq创建文件并将其保存在用户电脑中

javascript - 不可设置和不可写的属性仍然是可变的

javascript - 为什么 ColorBox 无法正确加载?

jquery - 使用 Jquery 进行后退和下一步导航

jquery - 从另一个网页上的链接选择 JQUERY 选项卡中的 anchor

javascript - 使用淡入淡出 jQuery 的图像切换

php - 未捕获的范围错误 : Maximum call stack size exceeded in daterangepicker

javascript - 将变量从 IPython/Jupyter 内核提取到 javascript