Manipulación del DOM
El Document Object Model (DOM) es una interfaz de programación que representa la estructura de un documento HTML como un árbol de objetos. JavaScript puede acceder y modificar estos objetos para cambiar dinámicamente el contenido, estructura y estilo de una página web.¿Qué es el DOM?
Cuando el navegador carga una página HTML, crea un modelo de objetos del documento. Este modelo es una representación en memoria de la estructura de la página:document es el punto de entrada al DOM y representa todo el documento HTML.
El DOM no es JavaScript - es una API web que JavaScript puede usar para interactuar con HTML y XML.
Modificar Contenido de Elementos
Una vez que has seleccionado un elemento, puedes modificar su contenido y propiedades.Cambiar Texto
textContent- Texto plano sin formato HTMLinnerHTML- Contenido HTML (puede incluir etiquetas)innerText- Similar a textContent pero respeta el CSS (no muestra elementos ocultos)
Modificar Estilos
Puedes cambiar los estilos CSS directamente desde JavaScript:Crear Nuevos Elementos
Puedes crear elementos HTML dinámicamente y agregarlos al DOM.Métodos de Inserción
appendChild()
appendChild()
Agrega un elemento como último hijo del elemento padre.
insertAdjacentElement()
insertAdjacentElement()
Inserta un elemento en una posición relativa al elemento de referencia.Posiciones disponibles:
'beforebegin'- Antes del elemento'afterbegin'- Como primer hijo'beforeend'- Como último hijo'afterend'- Después del elemento
insertBefore()
insertBefore()
Inserta un elemento antes de un hijo específico.
Eliminar Elementos
Puedes remover elementos del DOM cuando ya no los necesites.Métodos de Eliminación
- removeChild()
- remove()
Remueve un hijo específico del elemento padre.
Modificar Atributos
Puedes leer y modificar atributos HTML de los elementos.Modificar Clases CSS
Manipular clases CSS es una forma común de cambiar estilos:Ejemplo Completo
Aquí hay un ejemplo que combina varios conceptos:Próximos Pasos
Selectores
Aprende todos los métodos para seleccionar elementos
Event Listeners
Maneja interacciones del usuario con eventos