Introducción al DOM en JavaScript
¿Qué es el DOM?
El DOM (Document Object Model) es una interfaz de programación para los documentos HTML y XML. Representa la estructura de un documento como un árbol de nodos, donde cada nodo es un objeto que representa una parte del documento, como un elemento, un atributo, o un texto. JavaScript puede interactuar con el DOM para manipular la estructura, el estilo y el contenido de la página en tiempo real.
Cómo Funciona el DOM
El DOM permite que JavaScript acceda y manipule el contenido y la estructura de un documento HTML de las siguientes maneras:
Acceso a Elementos del DOM:
document.getElementById(id)
: Selecciona un elemento por su ID.document.querySelector(selector)
: Selecciona el primer elemento que coincide con el selector CSS.document.querySelectorAll(selector)
: Selecciona todos los elementos que coinciden con el selector CSS.
Manipulación de Contenidos:
element.textContent
: Cambia o devuelve el contenido textual de un elemento.element.innerHTML
: Cambia o devuelve el HTML interno de un elemento.element.setAttribute(name, value)
: Establece un atributo para el elemento.
Manipulación de Estructura:
element.appendChild(node)
: Añade un nodo hijo al final de la lista de hijos de un elemento.element.removeChild(node)
: Elimina un nodo hijo de la lista de hijos de un elemento.document.createElement(tagName)
: Crea un nuevo elemento HTML.
Manipulación de Estilos:
element.style.propertyName
: Cambia una propiedad CSS específica de un elemento.
Eventos:
element.addEventListener(event, function)
: Adjunta un manejador de eventos a un elemento.Eventos comunes:
click
,mouseover
,keydown
,submit
, etc.
Ejemplo Completo
Aquí tienes un ejemplo que ilustra cómo interactuar con el DOM para crear un pequeño formulario de contacto. Este ejemplo cubre la creación de elementos, la manipulación de contenido, la manipulación de estilos y la gestión de eventos.
HTML
JS
Explicación del Ejemplo
Acceso a Elementos del DOM: Usamos document.getElementById para obtener referencias a los elementos del formulario.
Manipulación de Contenidos: mensajeDiv.textContent se usa para mostrar mensajes de validación o éxito.
Manipulación de Estilos: mensajeDiv.style.color cambia el color del mensaje según el estado (error o éxito).
Eventos: enviarBtn.addEventListener('click', function) añade un manejador de eventos que se activa cuando el usuario hace clic en el botón de enviar. Se validan los campos y se muestra un mensaje en consecuencia.
Last updated