descendants
- возвращает список ВСЕХ объектов, вложенных в данный объект (т.е. потомков, потомков потомков и т.д.)
immediateDescendants, childElements
- возвращает список только прямых потомков.
Стандартный
childNodes
также возвращает список только прямых потомков. Отличие
childNodes
от
immediateDescendants
состоит в том, что методы prototype пропускают узлы типа
TEXT_NODE
и возвращают список только элементов.
Посмотрим на примере. Пусть, например, есть следующая структура:
<div id="Hardware">Hardware
<div id="CPU">CPU
<div id="Pentium4">Pentium4</div>
<div id="CoreDuo">Core Duo</div>
<div id="AthlonXP">Athlon XP</div>
</div>
<div id="Videoadapters">;Videoadapters
<div id="gf6800gt">GeForce 6800 GT</div>
<div id="rx1650xt">Radeon X1650 XT</div>
</div>
</div>
Для элемента Hardware:
immediateDescendants
вернет:
CPU
Videoadapters
descendants
вернет:
CPU
Pentium4
CoreDuo
AthlonXP
Videoadapters
gf6800gt
rx1650xt
childNodes
вернет:
[#text]
[DIV id: CPU]
[#text]
[DIV id: Videoadapters]
[#text]