2008-10-15 2 views

ответ

28

Относительно $("div > ul.posts"), будут выбраны только прямые потомки DIV с.

<div> 
    <ul class="posts"> <!--SELECTED--> 
     <li>List Item</li> 
     <ul class="posts"> <!--NOT SELECTED--> 
      <li>Sub list item</li> 
     </ul> 
    </ul> 

    <fieldset> 
     <ul class="posts"> <!--NOT SELECTED--> 
      <li>List item</li> 
     </ul> 
    </fieldset> 

    <ul class="posts"> <!--SELECTED--> 
     <li>List item</li> 
    </ul> 
</div> 

пока $("div ul.posts") будут выбраны все потомки, соответствующие критериям. Таким образом, все и любые ul.posts будут выбраны, независимо от уровня их гнездования, до тех пор, пока где-то вдоль цепочки, они находятся в пределах div.

+0

У вас есть комментарий, удаляющий магию. Но gg для его исправления. – eyelidlessness 2008-10-15 04:37:03

5

Первый выбирает только ul.posts, parentNode которого является div.

Второй также выбрать:

<div> 
    <blockquote> 
     <ul class="posts"></ul> 
    </blockquote> 
</div> 
1

Ох. Таким образом, «предок потомок» относится ко всем указанным элементам под родителем, независимо от того, насколько глубоко вложенных

В то время как «родитель ребенок» относится только к первому указанному элементу, даже если это происходит снова куда-то под родителем

0

I Просто добавьте здесь знакомую ссылку. Я понимаю, что через несколько лет после первоначального вопроса, но это было на первой странице в Google, и, возможно, это поможет кому-то другому.

Подумайте о реальных предках и родителях. Родитель и ребенок всегда разделены на одно поколение, но предки и их потомки могут быть сотнями лет друг от друга. Символ > символизирует прямую связь между родительским и дочерним.

Смежные вопросы