JavaScript

JavaScript

Tutorial JavaScript: Selección de elementos DOM

JavaScript selección DOM: técnicas y ejemplos. Domina las técnicas de selección de elementos del DOM en JavaScript con ejemplos detallados.

La selección de elementos del Document Object Model (DOM) es una tarea fundamental en JavaScript. El DOM es una interfaz de programación que representa documentos HTML y XML como un árbol de nodos y objetos. Cada parte de un documento, como elementos, atributos y texto, se convierte en un objeto en el DOM. JavaScript se usa para interactuar con el DOM para manipular el contenido, la estructura y el estilo de los documentos web.

En JavaScript, existen varias formas de seleccionar elementos del DOM:

Métodos getElement

getElementById

Este método devuelve el elemento que tiene el atributo id especificado. El valor del ID debe ser único en el documento.

let elemento = document.getElementById('miId');

getElementsByClassName

Este método devuelve una colección de todos los elementos que tienen una clase específica. Como puede haber múltiples elementos con la misma clase, este método devuelve una colección de elementos similar a un array de tipo HTMLCollection.

let elementos = document.getElementsByClassName('miClase');

// Acceder al primer elemento
let primerElemento = elementos[0];

getElementsByTagName

Este método devuelve una colección de todos los elementos que tienen el nombre de etiqueta especificado. Al igual que getElementsByClassName, devuelve una HTMLCollection.

let elementos = document.getElementsByTagName('div');

// Acceder al primer elemento
let primerElemento = elementos[0];

Métodos querySelector

Estos métodos reciben entre comillas el mismo tipo de selectores que se utilizarían en CSS.

document.querySelector(selectores)

Este método devuelve el primer elemento que coincida con los selectores CSS proporcionados. Si no encuentra ningún elemento coincidente, devuelve null.

// Obtener primer elemento de clase 'miClase'
let primerElemento = document.querySelector('.miClase');

document.querySelectorAll(selectores)

Este método devuelve una NodeList estática (no viva) que representa una lista de elementos del documento que coinciden con el grupo de selectores CSS proporcionados.

// Obtener primer elemento <div> de clase 'miClase'
let elementos = document.querySelectorAll('div.miClase');

// Acceder al primer elemento
let primerElemento = elementos[0];

Selectores CSS

Algunos de los selectores que se pueden utilizar en los métodos querySelector y querySelectorAll incluyen:

  1. Selector de tipo: Selecciona elementos basados en el nombre del elemento (ej., div, p, span). Ejemplo: document.querySelector('div').

  2. Selector de clase: Selecciona elementos basados en el valor del atributo class (ej., .miClase). Ejemplo: document.querySelector('.miClase').

  3. Selector de ID: Selecciona un elemento basado en el valor del atributo id (ej., #miId). Ejemplo: document.querySelector('#miId').

  4. Selector de atributo: Selecciona elementos basados en la presencia o valor de un atributo (ej., [href], [target="_blank"]). Ejemplo: document.querySelector('[href]').

  5. Selector descendiente: Selecciona elementos que son descendientes de otro elemento (ej., div p seleccionará todos los párrafos que están dentro de un div). Ejemplo: document.querySelector('div p').

  6. Selector de hijo directo: Selecciona elementos que son hijos directos de otro elemento (ej., div > p seleccionará solo los párrafos que son hijos directos de un div). Ejemplo: document.querySelector('div > p').

  7. Selector de hermano adyacente: Selecciona elementos que son hermanos adyacentes de otro elemento (ej., div + p seleccionará el primer párrafo que es hermano adyacente de un div). Ejemplo: document.querySelector('div + p').

  8. Selector de pseudo-clase: Selecciona elementos basados en su estado particular (ej., :hover, :active, :first-child, :nth-child(2)). Ejemplo: document.querySelector('div:hover').

Estos selectores pueden combinarse y anidarse para seleccionar elementos más específicos.

Acceder y modificar propiedades y métodos del elemento

Una vez seleccionado el elemento del DOM, se puede acceder a sus propiedades y métodos. Por ejemplo, se puede obtener o modificar su contenido de texto usando la propiedad .innerText o .textContent, y su contenido HTML usando .innerHTML.

let elemento = document.getElementById('miId');

// Obtener el contenido de texto
let texto = elemento.textContent;

// Cambiar el contenido de texto
elemento.textContent = 'Nuevo contenido';

// Obtener el contenido HTML
let html = elemento.innerHTML;

// Cambiar el contenido HTML
elemento.innerHTML = '<p>Nuevo contenido HTML</p>';

También se pueden acceder y modificar los atributos de un elemento usando los métodos .getAttribute(atributo) y .setAttribute(atributo, valor).

let elemento = document.getElementById('miId');

// Obtener el valor de un atributo
let clase = elemento.getAttribute('class');

// Establecer el valor de un atributo
elemento.setAttribute('class', 'nuevaClase');

Estos son los conceptos básicos de la selección y manipulación de elementos del DOM en JavaScript. Es importante recordar que el DOM es dinámico, lo que significa que cualquier cambio realizado con JavaScript se refleja inmediatamente en la página web.

Certifícate en JavaScript con CertiDevs PLUS

Ejercicios de esta lección Selección de elementos DOM

Evalúa tus conocimientos de esta lección Selección de elementos DOM con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Funciones flecha

JavaScript
Puzzle

Polimorfismo

JavaScript
Test

Array

JavaScript
Código

Transformación con map()

JavaScript
Test

Introducción a JavaScript

JavaScript
Test

Gestor de tareas con JavaScript

JavaScript
Proyecto

Manipulación DOM

JavaScript
Test

Funciones

JavaScript
Test

Funciones flecha

JavaScript
Código

Async / Await

JavaScript
Código

Creación y uso de variables

JavaScript
Test

Excepciones

JavaScript
Puzzle

Promises

JavaScript
Código

Funciones cierre (closure)

JavaScript
Test

Herencia

JavaScript
Puzzle

Herencia

JavaScript
Test

Estructuras de control

JavaScript
Código

Selección de elementos DOM

JavaScript
Test

Modificación de elementos DOM

JavaScript
Test

Filtrado con filter() y find()

JavaScript
Test

Funciones cierre (closure)

JavaScript
Puzzle

Funciones

JavaScript
Puzzle

Mapas con Map

JavaScript
Test

Reducción con reduce()

JavaScript
Test

Callbacks

JavaScript
Puzzle

Manipulación DOM

JavaScript
Puzzle

Promises

JavaScript
Test

Async / Await

JavaScript
Test

Eventos del DOM

JavaScript
Puzzle

Async / Await

JavaScript
Puzzle

Promises

JavaScript
Puzzle

Filtrado con filter() y find()

JavaScript
Código

Callbacks

JavaScript
Test

Creación de clases y objetos Restaurante

JavaScript
Código

Reducción con reduce()

JavaScript
Código

Filtrado con filter() y find()

JavaScript
Puzzle

Reducción con reduce()

JavaScript
Puzzle

Conjuntos con Set

JavaScript
Puzzle

Herencia de clases

JavaScript
Código

Eventos del DOM

JavaScript
Test

Clases y objetos

JavaScript
Puzzle

Modificación de elementos DOM

JavaScript
Puzzle

Mapas con Map

JavaScript
Puzzle

Funciones

JavaScript
Código

Tipos de datos

JavaScript
Test

Clases y objetos

JavaScript
Test

Array

JavaScript
Test

Conjuntos con Set

JavaScript
Test

Array

JavaScript
Puzzle

Encapsulación

JavaScript
Puzzle

Clases y objetos

JavaScript
Código

Uso de operadores

JavaScript
Puzzle

Uso de operadores

JavaScript
Test

Estructuras de control

JavaScript
Test

Excepciones

JavaScript
Test

Transformación con map()

JavaScript
Puzzle

Funciones flecha

JavaScript
Test

Selección de elementos DOM

JavaScript
Puzzle

Encapsulación

JavaScript
Test

Mapas con Map

JavaScript
Código

Creación y uso de variables

JavaScript
Puzzle

Polimorfismo

JavaScript
Puzzle

Tipos de datos

JavaScript
Puzzle

Estructuras de control

JavaScript
Puzzle

Todas las lecciones de JavaScript

Accede a todas las lecciones de JavaScript y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Certificados de superación de JavaScript

Supera todos los ejercicios de programación del curso de JavaScript y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

En esta lección

Objetivos de aprendizaje de esta lección

  1. Comprender qué es el DOM y cómo representa la estructura de una página web como un árbol de nodos y objetos.
  2. Conocer los métodos getElementById, getElementsByClassName y getElementsByTagName para seleccionar elementos del DOM.
  3. Familiarizarse con los métodos querySelector y querySelectorAll, y los selectores CSS que permiten seleccionar elementos de forma más flexible.
  4. Aprender cómo acceder y modificar el contenido de texto e HTML de un elemento usando las propiedades textContent e innerHTML.
  5. Conocer cómo acceder y modificar atributos de elementos utilizando los métodos getAttribute y setAttribute.
  6. Reconocer la importancia de la manipulación del DOM para crear páginas web dinámicas y cómo los cambios realizados con JavaScript se reflejan de inmediato en la página.