我有一些浮动的div,我想用jquery选择第三个。 此外,在每个3个元素之后,我的html中有一个hr标记,而这个hr也被jquery包含在第n个子计数中。我可以只选择div并排除在html中插入的其他元素吗?
这是我的代码
$('.col:nth-child(3n)').addClass('third');
谢谢!
答案 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');
对于< = IE8(不幸的是总是如此)
$('div.col').each(function (idx, el) {
if ((idx + 1) % 3 === 0) {
$(el).addClass('third');
}
});