我有一些看起来像这样的标记:
<h3>Mgmt</h3>
<div class="ManagementOperations">bla bla </div>
<div class="ManagementOperations">bla bla </div>
<div class="ManagementOperations">bla bla </div>
<div class="ManagementOperations">bla bla </div>
<div class="ManagementOperations">bla bla </div>
<h3>People</h3>
<div class="people">bla bla </div>
<div class="people">bla bla </div>
<div class="people">bla bla </div>
<div class="people">bla bla </div>
<div class="people">bla bla </div>
<div class="people">bla bla </div>
两个类别的每个div的数量为2 - 100
我想将类rowEnd添加到每个第3个'ManagementOperations',每隔3个'ManagementOperations',计数会在类中发生更改时重置。
有什么想法吗?我使用它的效果很差:
$(".ManagementOperations:nth-child(4n)").addClass('rowEnd');
答案 0 :(得分:3)
尝试:
$(".ManagementOperations:nth-child(3n+1)").addClass('rowEnd');
答案 1 :(得分:2)
:nth-child Selector将找到其父元素的第n个子元素。看起来好像你的所有元素,包括你的h3都有相同的父元素,所以它只适用于你给出的每个第3个元素,例如第二个div。你可以将每个div的集合包装在另一个div中,以便将父级的子节点约束到那些div。或者你可以这样做:
$(".ManagementOperations").each(function(index) {
if ((index+1) % 3 == 0) $(this).addClass('rowEnd');
});
无论如何,我还没有测试过它。