Javascript 翻译';李';逐一地

Javascript 翻译';李';逐一地,javascript,jquery,Javascript,Jquery,我想水平移动li元素,但不能像我的代码那样同时移动所有元素。 我该怎么做 我的代码: $('button').click(function(){ setTimeout(function(){ $('li').css('transform', 'translateX(100px)'); }, 1000) }) 请参见您可以使用函数传递附加参数i,然后使用函数查找当前索引,然后将其向左移动 代码: 更新:你不应该依赖一些随机的延迟,你的动画可能会不同步。改为使用相关事件

我想水平移动li元素,但不能像我的代码那样同时移动所有元素。 我该怎么做

我的代码:

$('button').click(function(){
    setTimeout(function(){
      $('li').css('transform', 'translateX(100px)');
    }, 1000)
})
请参见

您可以使用函数传递附加参数i,然后使用函数查找当前索引,然后将其向左移动

代码:


更新:

你不应该依赖一些随机的延迟,你的动画可能会不同步。改为使用相关事件并添加特定类别,例如:

$(函数(){
$(“按钮”)。单击(函数(){
$(“li”)。关于('transitionend',函数(e){
$(this.next().addClass('animating');
}).first().addClass('animating');
})
});
li{
过渡:所有0.7秒都易于输入输出;
}
li.动画制作{
转换:translateX(100px);
}

  • 名单
  • 名单
  • 名单
  • 名单

移动
所需的流量是多少?是的,您预期的行为是什么?一个接一个或随机移动它们???一个接一个任何想法plz?对.each()的回调可以有第二个参数(我们称之为el),它表示当前索引值处的值项(在本例中称为i)。因此,我们可以通过添加第二个参数并将$('li').eq(i)替换为$(el)来提高效率。
$('button').click(function(){
  $('li').each(function(i){
    setTimeout(function(){
      $('li').eq(i).css('transform', 'translateX(100px)');
    }, 1000*i)
  })
})