jQuery each:分别遍历每一组li

mat*_*att 1 javascript each jquery loops

我甚至不知道如何解释我的问题 - 这就是奇怪的标题来自哪里.我有ul另一个ul像下面的样本.

<ul class="event-items">
   <li class="year 2012"></li>
   <li class="year 2011"></li>
   <li class="year 2010">
      <ul>
         <li></li>
         <li></li>
         <li></li>
      </ul>
   </li>
<li class="year 2010"></li>
…
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

所以每个人li.year都有另一个<ul>有多个孩子的人.

现在我的问题:

我想知道我是如何能够each li.year单独完成的.

现在我正在这样做......

$('ul.event-items li.year ul li').each(function(i) {
    if ( i % 4 == 0 ) $(this).addClass('clearLeft');
});
Run Code Online (Sandbox Code Playgroud)

然而,这个each循环遍历ALL <li>.我想知道我如何能够li:year li单独完成每一项工作.听起来很奇怪吧?

所以我实际上想要循环遍历每一个,li.year以便我的i计数总是在每个内部开始li.year

Asa*_*din 5

使用嵌套循环分别迭代每个内部的子ul元素:

$('ul.event-items li.year ul').each(function() {
    $("li", this).each(function(i) {
        if (i % 4 == 0) 
            $(this).addClass('clearLeft');
    });
});
Run Code Online (Sandbox Code Playgroud)