Метод insertBefore() XML DOM
Определение и использование
insertBefore()
Метод вставляет новый подузел перед указанным подузлом текущего узла.
Примечание:Если newchild уже находится в дереве, то его сначала удаляют.
Синтаксис
nodeObject.insertBefore(newchild,existingnode,
)
) | Описание |
---|---|
newchild | Обязателен. Объект Node. Новый подузел, который нужно вставить. |
existingnode |
Обязателен. Объект Node. В узел которого нужно вставить новый подузел. Если существующий узел пуст, то новый подузел вставляется в конец списка подузлов. |
Технические детали
Версия DOM: | Core Level 1 Node Object. Изменен в DOM Level 3. |
---|---|
Возвратное значение: | Объект Node. Вставляемый узел. |
Пример
Ниже приведен код, который загружает "books.xml", создает новый узел <book> и вставляет его перед последним узлом <book>:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); } }; xhttp.open("GET", "books.xml", true); xhttp.send(); function myFunction(xml) { var xmlDoc = xml.responseXML; var newNode = xmlDoc.createElement("book"); var x = xmlDoc.documentElement; var y = xmlDoc.getElementsByTagName("book"); document.getElementById("demo").innerHTML = "Элементы книги до: " + y.length + "<br>"; x.insertBefore(newNode, y[3]); document.getElementById("demo").innerHTML += "Элементы книги после: " + y.length; }
Поддержка браузеров
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
Поддержка | Поддержка | Поддержка | Поддержка | Поддержка |
Все主流ые браузеры поддерживают insertBefore()
Методы.