logo
Vvedenie_v_Veb_programmirovanien_2 / Vvedenie_v_Veb_programmirovanien_2

Создание новых узлов

DOM поддерживает следующие методы, связанные с созданием новых узлов:

createElement(tagName) – создает узел (тег) с именем, переданным в параметре;

createTextNode(string) – создает текстовый узел с содержанием, переданным в параметре.

createAttribute(name) – создает атрибут с именем, переданным в параметре;

createComment(string) – создает HTML-комментарий в виде <!--string -->, текст комментария передается в параметре;

createDocumentFragment() – создает новый документ для хранения новых узлов;

Все методы принадлежат объекту document.

Технику создания новых элементов обсудим на примере. Предположим, что мы хотим добавить к существующему списку элемент: <LI>XML</LI>. Этому элементу в DOM соответствуют два узла: узел-элемент<LI>и текстовый узел"XML". Следовательно, нужно создать два новых узла с помощью методов createElement()и createTextNode() объекта document.

var oItem = document.createElement("LI")

Метод возвращает ссылку на созданный им объект. Элемент <LI> находится в памяти, но пока не входит в состав текущего документа. Чтобы элемент стал частью документа, его надо добавить к существующим узлам с помощью методов insertBefore() или appendChild().

Метод createTextNode() используется для создания текстового узла. Строковый параметр задает значение свойства nodeValue текстового узла. Например:

var oText = document.createTextNode("XML")

Cтрока кода создает новый текстовый узел"XML". Метод возвращает ссылку на созданный им объект. Для того, чтобы cозданный текст стал частью текущего документа, его надо присоединить к существующим узлам документа с помощью методов appendChild(), replaceNode() или insertBefore().

Итак, мы создали два новых узла: узел-элемент<LI>и текстовый узел"XML". Теперь займемся встраиванием этих узлов в документ.