Исследуйте древовидную структуру в JavaScript в цикле For - PullRequest
1 голос
/ 15 апреля 2011

Какие опции у меня есть для доступа к элементам дерева DOM в цикле For Loop? И если это слишком сложно, могу ли я преобразовать его в массив?

спасибо,

Bruno

Ответы [ 2 ]

1 голос
/ 15 апреля 2011

Вот пример на jsfiddle .

Если у вас есть какие-либо вопросы, не стесняйтесь спрашивать.У XML есть великолепная система обхода, и он даже не начинает использовать всю мощь DOM.

Кроме того, обязательно проверьте w3schools , хотя это не совершенно надежный источник .

1 голос
/ 15 апреля 2011

Дерево DOM позволяет вам перемещаться по уровням с помощью .children или .childNodes().

.children() предоставляет массив элементов DOM ниже текущего, а .childNodes() предоставляет все узлы,включая текстовые узлы.

Вы также можете использовать getElementById(), чтобы получить конкретный узел (намного быстрее, чем любой поиск в массиве), и getElementsByTagName(), чтобы получить все элементы определенного типа.

Я бы определенно не рекомендовал преобразовывать его в массив - дерево DOM в его нынешнем виде гораздо более гибкое, чем любой массив.

Если вам нужна большая гибкость, вы можете попробовать JQuery, который дает вамеще больше гибкости при поиске в DOM, добавляя сложные запросы селектора в стиле CSS.(современные браузеры также предоставляют это изначально с помощью метода getElementsBySelector(), но он доступен не во всех браузерах, поэтому вам лучше пока использовать JQuery или аналогичный для него)

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