XML DOM metoda insertBefore()
❮ Obiekt węzła
Przykład
Poniższy fragment kodu ładuje " books.xml ", tworzy nowy węzeł <book> i wstawia go przed ostatnim węzłem <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 =
"Book
elements before: " + y.length + "<br>";
x.insertBefore(newNode, y[3]);
document.getElementById("demo").innerHTML
+=
"Book elements after: " + y.length;
}
Wynikiem powyższego kodu będzie:
Book elements before: 4
Book elements after: 5
Definicja i użycie
Metoda insertBefore() wstawia nowy węzeł podrzędny przed określonym węzłem podrzędnym bieżącego węzła.
Uwaga: Jeśli nowe dziecko jest już w drzewie, jest najpierw usuwane.
Obsługa przeglądarki
Metoda insertBefore() jest obsługiwana we wszystkich głównych przeglądarkach.
Składnia
nodeObject.insertBefore(newchild,existingnode)
Parametry
Parameter | Type | Description |
---|---|---|
newchild | Node object | Required. The new child node to insert |
existingnode | Node object | Required. The node to insert the new child node before. If existingnode is null, insert newchild at the end of the list of children |
Wartość zwrotu
Type | Description |
---|---|
Node object | The inserted node |
Szczegóły techniczne
Wersja DOM | Obiekt węzła poziomu podstawowego. Zmodyfikowano w DOM Level 3 |
---|
❮ Obiekt węzła