Что означает селектор первого дочернего элемента? Выбрать первого дочернего элемента? Или выберите его, если это первый ребенок?

Посмотри на это:

var selection= $('table td:first-child');

На практике он выбирает <td> элементов первой строки в таблице.

Когда я увидел это в первый раз, я воспринял это как: выбрать все первые дочерние элементы во всех <td> в <table> </table>.

Но что он делает: выбирает все <td> в таблице, если это первый дочерний элемент своего родителя. Означает первый <td> между каждым тегом.

Итак, вопрос в том, работает ли селектор первого потомка как флаг? Или это работает как своего рода метод для получения первого дочернего элемента рассматриваемого элемента в наборе оболочек jQuery?

спасибо,


person pencilCake    schedule 25.01.2010    source источник


Ответы (2)


Firstchild получит TD в таблице, которая является первым дочерним элементом в их родительском элементе. Если бы вы хотели того, о чем изначально думали, это было бы что-то вроде table td > *:first-child. Думайте об этом как об остальных : фильтрах, которые предоставляет jQuery: скрытый, отключенный, проверенный и т. д. Он применяется к элементу в селекторе, к которому он прикреплен.

person Parrots    schedule 25.01.2010

селектор :first-child может соответствовать более чем одному: по одному для каждого родителя. Это эквивалентно :nth-child(1).

источник: здесь.

person Reigel    schedule 25.01.2010