Como eliminar nodos del DOM mediante Javascript

Como eliminar nodos del DOM mediante Javascript

Print Friendly, PDF & Email
Valora esta entrada

En entradas anteriores hemos repasado como acceder al DOM.

Sabemos identificar nodos en un documento web.

Los tratamos como objetos para modificar su contenido HTML y también sus atributos. Incluido el CSS y otras propiedades de interés.

Y nos queda pendiente hablar sobre como eliminar los nodos de una página web mediante Javascript.

Hoy hablaremos sobre la propiedad .removeChild( )

Estrategia para eliminar nodos del DOM

En JS un nodo no tiene la capacidad de autodestruirse.

Para ello necesitamos acceder a un nodo referencia y entonces eliminar el que indiquemos expresamente.

Existe una forma de hacerlo que a mi me gusta mucho. Sería algo así como:

nodo.parentNode.removeChild(nodo);

La estrategia consiste en acceder a un nodo. A partir de él acceder a su nodo padre/madre. Y una vez identificamos su nodo superior entonces es cuando con removeChild lo eliminamos.

Me gusta hacerlo de este modo porqué así no necesito recordar otros métodos de javascript también muy útiles (como por ejemplo firstChild() pero que terminan exigiendo una gran dosis de memoria.

Como eliminar el último o el primero de una lista de nodos anidados

Imaginemos que tenemos un <div> con varios párrafos anidados.

Como haríamos para modificar el primero o el último de los párrafos de la lista?

Con la estrategia mencionada anteriormente es relativamente fácil.

La clave está en saber identificar correctamente cada nodo.

En realidad existen instrucciones prefabricadas que pueden realizar el trabajo de identificar el primer nodo o el último de manera sencilla.

Pero a mi no me gusta.

Cuantas menos instrucciones tengo que recordar mejor.

eliminar nodos DOM javascript
Eliminar nodos en un documento web mediante Javascript

Por esta razón la estrategia que yo sigo la resuma en las siguientes 2 instrucciones.

Para eliminar el primero de los párrafos anidados dentro de un <div>:

var primerParrafo = document.querySelectorAll(«div p»)[0];
primerParrafo.parentNode.removeChild(primerParrafo);

Para eliminar el último de los párrafos anidados dentro de un <div>:

var parrafos = document.querySelectorAll(«div p»);
var ultimoParrafo = parrafos[parrafos.length-1];

Francesc Ricart
hola@francescricart.com

Soy un ingeniero industrial a quién le apasiona aprender y enseñar. En el mundo del marketing online he encontrado una de mis pasiones. Ejerzo como docente ocupacional y privado para empresas. Y también hago consultoría web para PIMES, autónomos y otros emprendedores como yo. Ayudo a las empresas en cualquier temática relacionada con su presencia digital y herramientas web. Aunque mi especialidad es el posicionamiento en buscadores (SEO). A nivel de formación lo que más feliz me hace es que un alumno haga de mi pasión una forma de vida y le ayude a encontrar trabajo. A nivel de negocios ayudo a empresarios a desenvolverse con soltura en el mundo digital y les animo a hacer cada vez más cosas que nunca hubieran imaginado que ellos también podían hacer. En este camino les ayudo haciendo todo aquello dónde ellos no llegan y crecemos juntos. Encontraréis más acerca de mi en la página sobre mi

No hay comentarios

Escribir un comentario

  Acepto la política de privacidad

Responsable: FRANCESC RICART MUÑOZ.

Finalidad: Gestionar los comentarios que realizas en este blog.

Destinatarios: No se cederán datos a terceros, salvo obligación legal.

Derechos: Tienes derecho a acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la política de privacidad.