2012-12-03 86 views
4

我有以下HTML和我想斑馬條中的3組的內容:li元素的斑馬條帶組

<ul id="item-order"> 

    <li class="thumbnail">Item 1</li> 
    <li class="thumbnail">Item 2</li> 
    <li class="thumbnail">Item 3</li> 
    <li class="thumbnail">Item 4</li> 
    <li class="thumbnail">Item 5</li> 
    <li class="thumbnail">Item 6</li> 
    <li class="thumbnail">Item 7</li> 
    <li class="thumbnail">Item 8</li> 
    <li class="thumbnail">Item 9</li> 

</ul> 

所以我想生成以下使用jQuery:

<ul id="item-order"> 
    <li class="thumbnail stripe">Item 1</li> 
    <li class="thumbnail stripe">Item 2</li> 
    <li class="thumbnail stripe">Item 3</li> 
    <li class="thumbnail">Item 4</li> 
    <li class="thumbnail">Item 5</li> 
    <li class="thumbnail">Item 6</li> 
    <li class="thumbnail stripe">Item 7</li> 
    <li class="thumbnail stripe">Item 8</li> 
    <li class="thumbnail stripe">Item 9</li> 
</ul> 

我該怎麼辦?我有這樣的想法,但我不知道如何在if語句。

$('#item-order li:visible').each(function (i) { 
    if (...) $(this).addClass('stripe'); 
}); 
+0

我不太瞭解jQuery,是不是'i'實際上是索引號?如果是這樣,你需要像'(i/3)%2 == 0'這樣的東西。否則,你將不得不保留自己的指數計數器。 – Thor84no

+0

'$('#item-order li:nth-​​child(3n)')。addClass('red');' – adeneo

回答

5

如果您想將其添加到第6組中的前3個,則可以使用模數6運算符。如果你想從條紋開始使用以下內容:

$('#item-order li:visible').each(function (i) { 
    if (i%6 <= 2) { 
     $(this).addClass('stripe'); 
    } 
}); 
0

jQuery有:奇數和:即使選擇,這樣你就可以這樣做:

$('#item-order li:odd').addClass('odd'); 
$('#item-order li:even').addClass('even'); 

編輯,完全忽略了一點,這應該是你想要什麼:

$('#item-order li:visible').each(function (i) { 
    if(i % 6 <= 2) $(this).addClass('stripe'); 
}); 
+1

他沒有要求奇數和偶數。他要求組3。 – Thor84no

+0

darn,burrrn ...更新了我的答案 – Alex