JQuery: проблема первого цикла селектора - PullRequest
1 голос
/ 11 июня 2010
$(".wrap table tr:first").addClass("tr-top");

это работает для первой таблицы, но у меня есть много таблиц в div .wrap. что я должен делать? спасибо! * * 1002

Ответы [ 2 ]

1 голос
/ 11 июня 2010

В вашем примере эта строка возвращает первое из набора всех найденных 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 голосов
/ 11 июня 2010

Это должно работать.Каждый проходит по каждой таблице в .wrap.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...