Método insertBefore() del XML DOM
Definición y uso
insertBefore()
El método inserta un nuevo subnodo antes del subnodo especificado del nodo actual.
Nota:Si newchild ya está en el árbol, se elimina primero.
Sintaxis
nodeObject.insertBefore(newchild,existingnode,
)
) | Descripción |
---|---|
newchild | Obligatorio. Objeto Node. Nuevo subnodo a insertar. |
existingnode |
Obligatorio. Objeto Node. Nodo en el que se insertará el nuevo subnodo. Si el nodo existente está vacío, se inserta el nuevo subnodo al final de la lista de subnodos. |
Detalles técnicos
Versión de DOM: | Objeto de Nivel de Núcleo 1. Modificado en DOM Level 3. |
---|---|
Valor devuelto: | Objeto Node. Nodo insertado. |
Ejemplo
El siguiente código carga "books.xml", crea un nuevo nodo <book> y lo inserta antes del último nodo <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 = "Elementos de libro antes: " + y.length + "<br>"; x.insertBefore(newNode, y[3]); document.getElementById("demo").innerHTML +== "Elementos de libro después: " + y.length; }
Compatibilidad del navegador
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
Soporte | Soporte | Soporte | Soporte | Soporte |
Todos los navegadores principales lo soportan insertBefore()
Métodos.