JavaScript HTML DOM Node Lists
Объект HTML DOM
Объект Node Lists - это список (коллекция) узлов, извлеченных из документа.
Объект негастронома почти такой же, как объект хтмлколлектион.
Некоторые (более старые) браузеры возвращают объект, а не хтмлколлектион для таких методов, как getElementsByClassName ().
Все браузеры возвращают объект негастронома для свойства ChildNodes.
Большинство браузеров возвращают объект негастронома для метода querySelectorAll ().
Следующий код выбирает все <p> узлы в документе:
Пример
var myNodeList = document.querySelectorAll("p");
Доступ к элементам в магазине можно получить по индексному номеру.
Для доступа ко второму <p> узлу можно написать:
y = myNodeList[1];
Примечание: Индекс начинается с 0.
Длина списка узлов HTML DOM
Свойство length определяет количество узлов в списке узлов:
Пример
var myNodelist = document.querySelectorAll("p");
document.getElementById("demo").innerHTML = myNodelist.length;
Пример объяснил:
- Создание списка всех элементов <p>
- Отображение длины списка
Свойство Length полезно в том случае, если необходимо проциклить узлы в списке узлов.
Пример
Изменить цвет фона всех элементов <p> в списке узлов:
var myNodelist = document.querySelectorAll("p");
var i;
for (i = 0; i <myNodelist.length; i++) {
myNodelist[i].style.backgroundColor = "red";
}
Разница между хтмлколлектион и негастронома
Хтмлколлектион (Предыдущая глава) представляет собой набор элементов HTML.
Негастроном — это набор узлов документов.
Негастрономическое и HTML коллекции очень много то же самое.
Как объект хтмлколлектион, так и объект негастронома — это массив-подобный список (коллекция) объектов.
Оба имеют свойство Length, определяющее количество элементов в списке (коллекции).
Оба предоставляют индекс (0, 1, 2, 3, 4,...), чтобы получить доступ к каждому элементу, как массив.
Хтмлколлектион элементы могут быть доступны по имени, идентификатору или номеру индекса.
Доступ к элементам можно получить только по их индексному номеру.
Только объект «негастроном» может содержать узлы атрибутов и текстовые узлы.
Список узлов не является массивом!
Список узлов может выглядеть как массив, но это не так.
Можно проциклить список узлов и ссылаться на его узлы, как массив.
Однако нельзя использовать методы массива, такие как valueOf (), Push (), POP () или JOIN () в списке узлов.