jQuery nth-child排除其他元素

时间:2011-12-16 08:35:18

标签: jquery

我有一些浮动的div,我想用jquery选择第三个。 此外,在每个3个元素之后,我的html中有一个hr标记,而这个hr也被jquery包含在第n个子计数中。我可以只选择div并排除在html中插入的其他元素吗?

这是我的代码

$('.col:nth-child(3n)').addClass('third');

谢谢!

3 个答案:

答案 0 :(得分:1)

假设.col元素是您要选择的div元素,则需要使用.eq方法而不是nth-child

$(".col").eq(2); //Selects the 3rd element with class col

请注意,如果您想使用选择器,可以使用:eq选择器,但上述方法更快。

:nth-child的问题在于,如果它们与选择器匹配,则会返回指定的元素

答案 1 :(得分:1)

$('div.col').eq(2).addClass('third');

答案 2 :(得分:1)

尝试:

$('div.col:nth-of-type(3n)').addClass('third');

http://jsfiddle.net/WntR5/

对于< = IE8(不幸的是总是如此)

$('div.col').each(function (idx, el) {
  if ((idx + 1) % 3 === 0) {
    $(el).addClass('third');
  }
});

http://jsfiddle.net/WntR5/2/