简体   繁体   English

jQuery addClass循环从最后一个孩子开始

[英]jQuery addClass loop starting from last-child up

Every thing works as far as every 500 milliseconds it adds a class to the next blockWrap element in line. 每件事都可以工作到每500毫秒一次,它将每行中的下一个blockWrap元素添加一个类。

But what I want it to do is start with the last "blockWrap" element, add the class and then work its way up. 但是,我要执行的操作是从最后一个“ blockWrap”元素开始,添加类,然后逐步进行。 How can I achieve this? 我该如何实现?

here is my HTML: 这是我的HTML:

<div class="blockWrap">
    <div class="blockImg">
      <img src="img/download.jpg">
    </div>
  </div>
  <div class="blockWrap">
    <div class="blockImg">
      <img src="img/download.jpg">
    </div>
  </div>
  <div class="blockWrap">
    <div class="blockImg">
      <img src="img/download.jpg">
    </div>
  </div>

Here is my jQuery loop: 这是我的jQuery循环:

$(document).ready(function(){
  $(function () {
    var block = $('.blockWrap');
    (function _loop(wrap) {
      block.eq(wrap).addClass('slideIn');
      setTimeout(function () {
        _loop((wrap + 1) % block.length);
      }, 500);
    }(0));
  });
});

Thanks for your help. 谢谢你的帮助。

use below code . 使用下面的代码。 pass block.length as param and deduct value -1 . block.length作为参数传递,并减去值-1。 it will add class from bottom to up 它将从下到上添加类

$(function () {
var block = $('.blockWrap');
 (function _loop(wrap) {
  block.eq(wrap).addClass('slideIn');
    setTimeout(function () {
       _loop((wrap - 1) % block.length);
    }, 500);
   }(block.length));
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM