在每个循环中在三个不同的类之间交替

时间:2016-09-27 01:10:34

标签: jquery

我当前的代码设置如下:

var accounts = ['gobaopals', 'baopals05', 'baopals02'];
$('.orderId').each(function() {
    var index = $(this).index();
    if (index < accounts.length) {
        $(this).closest('tr').parent().parent().parent().addClass(accounts[index]);
    }
});

我想要做的是在每个表行的类之间交替,但是一切似乎都在获得gobaopals类? addClass在我的三个班级中循环的正确途径是什么?

1 个答案:

答案 0 :(得分:1)

从我在代码中看到的内容,.index()方法返回相对于父代的当前子位置。

似乎如果方法不断添加gaobapals类,那么DOM结构类似于

<div>
  <div class="orderId"></div>
</div>

实现这一点的一个简单方法是使用花哨的闭包

var accounts = ['gobaopals', 'baopals05', 'baopals02'];
var index = 0;
$('.orderId').each(function() {

    if (index < accounts.length) {
      $(this).closest('tr').parent().parent().parent().addClass(accounts[index]);
      index += 1;
      index = index % 3;      
    }
});