Lista de Nodos del HTML DOM
- Página anterior Colección DOM
- Página siguiente Ventana JS
Objeto NodeList del DOM HTML
NodeList El objeto es una lista de nodos (conjunto) extraídos del documento.
Los objetos NodeList y HTMLCollection son casi idénticos.
Si se utiliza getElementsByClassName()
El método, ciertos (navegadores antiguos) devuelven NodeList en lugar de HTMLCollection.
Todos los navegadores devuelven childNodes
La propiedad devuelve un objeto NodeList.
La mayoría de los navegadores devuelven querySelectorAll()
El método devuelve un objeto NodeList.
El siguiente código selecciona todos los nodos <p> del documento:
Ejemplo
var myNodeList = document.querySelectorAll("p");
Los elementos de NodeList se pueden acceder mediante números de índice.
Para acceder al segundo nodo <p>, puede escribir así:
y = myNodeList[1];
Notas:El índice comienza en 0.
Longitud de NodeList del DOM HTML
length
La propiedad define el número de nodos en la lista de nodos:
Ejemplo
var myNodelist = document.querySelectorAll("p"); document.getElementById("demo").innerHTML = myNodelist.length;
Explicación del ejemplo:
- Crear una lista de todos los elementos <p>
- Mostrar la longitud de la lista
length
La propiedad es muy útil cuando desea recorrer los nodos de la lista de nodos:
Ejemplo
Cambiar el color de fondo de todos los elementos <p> de la lista de nodos:
var myNodelist = document.querySelectorAll("p"); var i; for (i = 0; i < myNodelist.length; i++) { myNodelist[i].style.backgroundColor = "red"; }
Pruebe usted mismo
La diferencia entre HTMLCollection y NodeList
HTMLCollection (capítulo anterior) es una colección de elementos HTML.
NodeList es una colección de nodos de documento.
Los objetos HTMLCollection y NodeList son listas (conjuntos) de objetos de tipo array.
Tienen un número definido de elementos en la lista (conjunto). length
Atributo.
Ambos pueden acceder a cada elemento a través de un índice (0, 1, 2, 3, 4, ...), de la misma manera que un array.
Para acceder a los elementos de HTMLCollection, puede hacerlo por su nombre, id o número de índice.
Para acceder a los elementos de NodeList, debe hacerlo a través de su número de índice.
Sólo los objetos NodeList pueden contener nodos de atributo y nodos de texto.
La lista de nodos no es un array!
La lista de nodos parece ser un array, pero no lo es.
Puede recorrer la lista de nodos e identificar sus nodos de la misma manera que un array.
Sin embargo, no puede usar métodos de array en listas de nodos, como valueOf()
、push()
、pop()
o join()
.
- Página anterior Colección DOM
- Página siguiente Ventana JS