使用jQuery的nth-class?

时间:2013-07-15 13:46:58

标签: jquery jquery-selectors

我有这样的结构:

<div id="wrapper">
  <div class="class_1"></div>
  <div class="class_1"></div>
  <div class="class_2"></div>
  <div class="class_2"></div>
  <div class="class_2"></div>
  <div class="class_2"></div>
</div>

是否可以使用jQuery选择每秒 .class_2

我不想在#wrapper

中选择任何其他div

我尝试了什么:

  

:nth-child - 这是在计算所有div

     

:nth-of-type - 这也计算所有div

我想选择例如每个第二个div仅使用.class_2并添加一些类。

2 个答案:

答案 0 :(得分:3)

问题:

  

“我想选择例如每个第二个div仅使用.class_2

解决方案:

我相信你可以在这个例子中使用 :odd ,例如:

$('#wrapper > div.class_2:odd')

虽然将:odd filter() 连接起来实际上是更快的方式:

$('#wrapper > div.class_2').filter(':odd')

这会选择class_2的每个div,并根据它们是奇数还是偶数来过滤它们。

<强> jsFiddle here.

你为什么使用:奇数而不是:即便如此?

0-based indexing 实际上意味着具有讽刺意味的是,:odd会选择第二,第四,第六元素等。

答案 1 :(得分:-1)

第二个,即不是0,1,不是2,不是3等......?或者不是0,1,不是2,3,不是4等......? 如果只是第二个:

$('div.class_2:nth-child(2)')

如其他答案所述:

$('div.class_2:odd')