XML DOM propiedad firstChild
❮ Objeto de documento
Ejemplo
El siguiente fragmento de código carga " books.xml " en xmlDoc y muestra el nombre de nodo y el tipo de nodo del primer nodo secundario:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
// Check if the first node is an element node
function get_firstchild(n)
{
var x = n.firstChild;
while (x.nodeType
!= 1) {
x = x.nextSibling;
}
return x;
}
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = get_firstchild(xmlDoc);
document.getElementById("demo").innerHTML =
"Nodename:
" + x.nodeName +
" (nodetype: " + x.nodeType + ")<br>";
}
La salida del código anterior será:
Nodename: bookstore (nodetype: 1)
Definición y uso
La propiedad firstChild devuelve el primer nodo secundario del documento.
Sintaxis
documentObject.firstChild
Consejos y notas
Nota: Firefox y la mayoría de los demás navegadores tratarán los espacios en blanco vacíos o las líneas nuevas como nodos de texto, Internet Explorer no lo hará. Entonces, en el ejemplo a continuación, tenemos una función que verifica el tipo de nodo del primer nodo secundario.
Los nodos de elemento tienen un tipo de nodo de 1, por lo que si el primer nodo secundario no es un nodo de elemento, se mueve al siguiente nodo y verifica si este nodo es un nodo de elemento. Esto continúa hasta que se encuentra el primer nodo secundario (que debe ser un nodo de elemento). De esta forma, el resultado será correcto en todos los navegadores.
Sugerencia: Para leer más sobre las diferencias entre los navegadores, visite nuestro capítulo Navegadores DOM en nuestro Tutorial XML DOM.
Demostraciones para que lo pruebe usted mismo
❮ Objeto de documento