jquery每个添加类中间延迟

前端之家收集整理的这篇文章主要介绍了jquery每个添加类中间延迟前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要遍历每个div .row来添加删除具有 CSS3 3D变换效果的翻转类.

当我使用jquery each()将每个“.row”应用此添加/删除类时,所有div都会在同一时间添加删除类“.flip”.我需要这个延迟,所以它看起来像多米诺骨牌效应.

知道如何让这个工作吗?或者如何逐个添加/删除翻转类?

这是我发现但它不起作用:

$('.row').each(function(i){
    if($(this).hasClass('flip')){
      $(this).delay(i*500).removeClass('flip');
    }else{
      $(this).delay(i*500).addClass('flip');
    }
  });

解决方法

jQuery delay()方法只使用$(obj).delay(500).addClass(‘flip’)来延迟串联方法队列中的下一个部分.它不会延迟所有后续代码行. (查看 first example以及代码如何并行运行其动画)

请尝试使用setTimeout().

$('.row').each(function(i){
  var row = $(this);
  setTimeout(function() {
    row.toggleClass('flip');
  },500*i);
});​

Fiddle

猜你在找的jQuery相关文章