jQuery递归地将编号的类添加到div的块中

uom*_*ese 1 html jquery class add

我正在从数组中包含固定数量的div(例如每组4个)..item从数组返回的div的数量是未知的...我需要递归地将相同的类添加到包裹的div组中:

<div class="wrapper">
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
</div>
<div class="wrapper">
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
  <div class="item"></div>
</div>
<!-- more divs follow... -->
<div class="wrapper">
   ...
</div>
<div class="wrapper">
   ...
</div>
Run Code Online (Sandbox Code Playgroud)

这是最终结果:

<div class="wrapper">
  <div class="item div-01"></div>
  <div class="item div-02"></div>
  <div class="item div-03"></div>
  <div class="item div-04"></div>
</div>
<div class="wrapper">
  <div class="item div-01"></div>
  <div class="item div-02"></div>
  <div class="item div-03"></div>
  <div class="item div-04"></div>
</div>
<!-- more divs follow... -->
<div class="wrapper">
   ...
</div>
<div class="wrapper">
   ...
</div>
Run Code Online (Sandbox Code Playgroud)

我用来包装div的代码:

var divs = $(".item");
for(var i = 0; i < divs.length; i+=4) {
    divs.slice(i, i+4).wrapAll('<div class="wrapper"></div>');
}
Run Code Online (Sandbox Code Playgroud)

Miv*_*web 6

$('.wrapper').each(function() {
    $.each($(this).children('.item'), function(k,v) { // k = index, v = value
        $(this).addClass('div-' + (k < 9 ? '0' : '') + (k+1));
    });
});
Run Code Online (Sandbox Code Playgroud)

使用each()循环遍历项目,并使用索引添加类.