2010-06-11 46 views
1
$(".wrap table tr:first").addClass("tr-top"); 

它適用於第一個表,但我有許多表下div .wrap。 我該怎麼辦?謝謝!jquery:第一個選擇器循環問題

+0

我們可以看到您的標記? – 2010-06-11 17:45:57

回答

1

在你的榜樣,這條線返回集合中的所有元素tr的第一。

$(".wrap table tr:first").addClass("tr-top"); // First <tr> of all that are found 

所以,如果你有3個table元素,它只會從第一個表中返回第一tr,因爲這將是第一個匹配的tr元素。

如果你想爲每個第一tr,你需要first-child

$(".wrap table tr:first-child").addClass("tr-top"); // First <tr> for each <table> 

...這將返回每個tr是其父的第一個孩子。

http://api.jquery.com/first-selector/

http://api.jquery.com/first-child-selector/

+0

謝謝你!這樣可行。 – ray 2010-06-11 17:58:42

+0

@射線 - 不客氣。 :O) – user113716 2010-06-11 17:59:35

0

這應該工作。每個循環遍歷.wrap中的每個表。

$('.wrap table').each(function() { 
    $('.wrap table tr:first').addClass('tr-top'); 
}}; 

http://api.jquery.com/each/

+0

這實際上並不會產生與OP目前有什麼不同的結果。 – user113716 2010-06-11 17:55:04

+0

謝謝!但我想我已經嘗試過,似乎也不適用於我。 – ray 2010-06-11 17:58:24