CursosEmpresasBlogLiveConfPrecios

Leer nodos

Clase 5 de 29 • Curso de Manipulación del DOM

Clase anteriorSiguiente clase

Contenido del curso

DOM y Web API
  • 1
    Y entonces nació internet...

    Y entonces nació internet...

    02:23
  • 2

    Accede a la versión más actualizada de este contenido

    00:14
  • 3
    ¿Qué es el DOM?

    ¿Qué es el DOM?

    02:39
  • 4
    Web APIs modernas

    Web APIs modernas

    03:17
Operaciones básicas
  • 5
    Leer nodos

    Leer nodos

    09:31
  • 6
    NodeLists vs Array

    NodeLists vs Array

    03:46
  • 7
    Crear y agregar

    Crear y agregar

    15:47
  • 8
    Otras formas de agregar

    Otras formas de agregar

    06:55
  • 9
    Atributos y propiedades

    Atributos y propiedades

    05:12
  • 10
    Eliminar nodos

    Eliminar nodos

    09:31
  • 11
    Operaciones en lote

    Operaciones en lote

    06:52
Workshop 1: Fetch
  • 12
    Presentación del proyecto

    Presentación del proyecto

    01:10
  • 13
    Descargando información y creando nodos

    Descargando información y creando nodos

    18:36
  • 14
    Enriqueciendo la información

    Enriqueciendo la información

    10:53
  • 15
    Usando la API de internacionalización del browser

    Usando la API de internacionalización del browser

    12:14
  • 16
    Comparte el resultado

    Comparte el resultado

    02:18
Eventos
  • 17
    Reaccionar a lo que sucede en el DOM

    Reaccionar a lo que sucede en el DOM

    13:58
  • 18
    Event propagation

    Event propagation

    12:08
  • 19
    Event delegation

    Event delegation

    05:32
Workshop 2: Lazy loading
  • 20
    Presentación del proyecto

    Presentación del proyecto

    03:34
  • 21
    Nuestro propio plugin Lazy Loading

    Nuestro propio plugin Lazy Loading

    08:32
  • 22
    Creando las imagenes con JavaScript

    Creando las imagenes con JavaScript

    17:33
  • 23
    Intersection Observer

    Intersection Observer

    14:21
  • 24
    Aplicando Lazy loading

    Aplicando Lazy loading

    13:07
  • 25
    Comparte el resultado

    Comparte el resultado

    03:17
Workshop 3
  • 26
    Proyectos propuestos

    Proyectos propuestos

    04:17
Librerías relacionadas
  • 27
    ¿Y jQuery?

    ¿Y jQuery?

    03:41
  • 28
    ¿Y JSX?

    ¿Y JSX?

    09:40
Conclusiones
  • 29
    Conclusiones

    Conclusiones

    01:56
    Sebastian Gonzalez

    Sebastian Gonzalez

    student•
    hace 5 años

    Básicamente tenemos 4 formas de leer nodos con JS: . .

    • parent.getElementById('id') => nos permite obtener un elemento a través de su id. .
    • parent.getElementsByClassName('class') => obtiene un array con todos los elementos hijos que tengan esa clase, ojo "getElementByClassName" no existe, es decir no podremos obtener solo 1 elemento con esa clase. .
    • parent.getElementsByTagName('div') => con este método obtenemos una lista o "array list" con todos los elementos que tengan esa etiqueta, ejemplo todos los divs. Al igual que con el método anterior no hay posibilidad de usarlo en singular, siempre tendremos que usar getElements .
    • parent.querySelector() => nos permite buscar de 3 formas, con id, clase o tagName. A diferencia de los 2 anteriores este nos devuelve 1 solo elemento, el primero que contenga el valor que se le paso. Id => ('#id'), class => ('.class'), tagName ('div') .
    • parent.querySelectorAll() => este método retorna una array list con todos los elementos que tengan ese selector (id, class o tagName) . Casi siempre el elemento "padre o parent" es document. ya que estamos haciendo referencia a todo el DOM, todo el documento y esto en ciertos casos nos permite evitar errores. ejemplo = const button = document.querySelector('#button)
      Jimmy Buriticá Londoño

      Jimmy Buriticá Londoño

      student•
      hace 5 años

      Muy bien explicado, gracias.

      Andrés Felipe García Rendón

      Andrés Felipe García Rendón

      student•
      hace 5 años

      Muchas gracias por compartir tus apuntes. Saludos

    Alex Maldonado

    Alex Maldonado

    student•
    hace 5 años
    Ei2AUiIVgAM9th-.jpg
      Pablo Guzman

      Pablo Guzman

      student•
      hace 5 años

      Esto debería estar entre los más votados

      Rolando Mamani Salas

      Rolando Mamani Salas

      student•
      hace 4 años

      Muy buen aporte muchas gracias

    Daniloo Morales

    Daniloo Morales

    student•
    hace 5 años

    Hola, Me gustaría compartir un resumen de la clase 🚀

    Node_0.jpg

      Jonathan 🦑 Alvarez

      Jonathan 🦑 Alvarez

      teacher•
      hace 5 años

      Ay pero que bello

      Edgar Lopez Arroyo

      Edgar Lopez Arroyo

      student•
      hace 5 años

      Que buen resumen!!! :D

    Carlos Eduardo Gomez García

    Carlos Eduardo Gomez García

    teacher•
    hace 5 años

    Desde JavaScript podemos leer nodos, tenemos 3 formas de hacerlo: .

    • document.getElementById(): Obtiene un elemento por su ID
    • parent.getElementByTagName(): Retorna un arreglo (realmente es un HTMLCollection) con todos los resultados coincidentes por el nombre de su etiqueta
    • parent.getElementByClassName(): Retorna un arreglo (realmente es un HTMLCollection) con todos los resultados coincidentes por su clase

    . Sin embargo, existen 2 selectores más poderosos 👀: .

    • parentElement.querySelector(): Selecciona un solo elemento y lo devuelve, la selección se hace a través de lo que le pases entre paréntesis, y la selección puede ser con sintaxis de CSS!! Retornará la primera coincidencia
    • parentElement.querySelectorAll(): Selecciona varios elemento y los devuelve, la selección se hace a través de lo que le pases entre paréntesis, y la selección puede ser con sintaxis de CSS!! Retornará un arreglo (en realidad es un NodeList)

    . Como pueden ver, es muy parecido a lo que teníamos con jQuery 👀

      Andrés Felipe Lopez gomez

      Andrés Felipe Lopez gomez

      student•
      hace 5 años

      Excelente aporte

      Rolando Mamani Salas

      Rolando Mamani Salas

      student•
      hace 4 años

      muchas gracias por el aporte

    Fernando Quinteros Gutierrez

    Fernando Quinteros Gutierrez

    student•
    hace 5 años

    👉 Sitio de la clase

      Andrés Felipe Lopez gomez

      Andrés Felipe Lopez gomez

      student•
      hace 5 años

      Muchas gracias

      Rolando Mamani Salas

      Rolando Mamani Salas

      student•
      hace 4 años

      Muchas gracias

    Marianna Guedez

    Marianna Guedez

    student•
    hace 4 años

    LEER NODOS MÉTODOS TRADICIONALES

    dom metodos tradicionales.png
    MÉTODOS MODERNOS
    dom metodos modernos.png

      Max Andy Diaz Neyra

      Max Andy Diaz Neyra

      student•
      hace 4 años

      Bonitas infografias, te quedaron muy bien. En que programa las hicistes?

    Aleja Henao Espitia

    Aleja Henao Espitia

    student•
    hace 5 años

    Para que no te sientas perdido: 🎁 https://getbootstrap.com/docs/4.5/examples/checkout/ esta es la página específica en la que el profe está trabajando

    Fernando Quinteros Gutierrez

    Fernando Quinteros Gutierrez

    student•
    hace 5 años

    👀 Leer nodos

    Ideas/conceptos claves

    Los objetos NodeList son colecciones de nodos como los devueltos por propiedades como Node.childNodes y el método document.querySelectorAll () Aunque NodeList no es un Array, es posible iterar sobre él utilizando forEach(). También puede convertirse a un Array usando Array.from

    Apuntes

    • Podemos usar los siguientes métodos para manipular el DOM

    🔢 Para obtener el elemento por el ID

    document.getElementById()

    🛑 Para obtener el elemento por el nombre de la etiqueta

    parent.getElementsByTagName()

    🏌️‍♀️ Para obtener el elemento por el nombre de la clase

    parent.getElementByClassName()
    • La web API ha cambiado bastante, por lo tanto, estos selectores no son recomendados cuando trabajamos con aplicaciones reales
    • Existen 2 alternativas para este tipo de operaciones
    parentElement.querySelector("") // tag => "div", "section" // clases => ".class1" // Id => "#idContenedor"
    • Permite seleccionar un elemento que especifiquemos en su primer argumento como una cadena o string

    parentElement.querySelectorAll()
    • Lo usamos cuando queremos traer todos los elementos que especifiquemos y nos devuelve una nodeList

    RESUMEN: Para poder leer nodos tenemos diferentes métodos brindados por el navegador, entre los mas destacados estan los de querySelector y querySelectorAll que nos permiten especificar lo que deseamos traer mediante una cadena de texto. Ademas que si nos devuelven una lista esta sera una nodeList

      Andrés Felipe Lopez gomez

      Andrés Felipe Lopez gomez

      student•
      hace 5 años

      Excelente aporte

      Rolando Mamani Salas

      Rolando Mamani Salas

      student•
      hace 4 años

      Excelente aporte

    Santiago Lopera Naranjo

    Santiago Lopera Naranjo

    student•
    hace 5 años

    Selectores mas recomendados:

    Por <tag/>

    document.querySelector('div')

    Por clase

    document.querySelector('.contianers')

    Por id

    document.querySelector('#user_name')

    :D

      Giselle Desiree Boyer Jimenez

      Giselle Desiree Boyer Jimenez

      student•
      hace 5 años

      No conocía estas opciones, gracias por compartir!

      Rolando Mamani Salas

      Rolando Mamani Salas

      student•
      hace 4 años

      muchas gracias por el resumen

    Rodrigo Reyes

    Rodrigo Reyes

    student•
    hace 5 años

    Esta clase o curso creo tardo mucho en llegar

      Hermes Aguilar

      Hermes Aguilar

      student•
      hace 5 años

      x2

      Roberto Medina

      Roberto Medina

      student•
      hace 5 años

      Hola que tal,

      Pero lo importante es que ya llegó y está muy interesante.

    Anfernee Valera

    Anfernee Valera

    student•
    hace 4 años

    Ya desde acá me pregunto porque este curso no está mas cerca en la escuela de desarrollo Web o la de JS o la de las rutas de los frameworks/librerias

      Angel David Contreras Barrios

      Angel David Contreras Barrios

      student•
      hace 3 años

      Coincido con lo mismo compañero. En varios cursos de Js no entendía muy bien lo que hacia el profe, hasta que decidí hacer este curso.

    Adrián Castillo

    Adrián Castillo

    student•
    hace 5 años

    Que tiene de diferente en utilizar "document.getElement.." y "parent.getElement..." espeificamente entre document y parent

      Carlos Eduardo Gomez García

      Carlos Eduardo Gomez García

      teacher•
      hace 5 años

      No hay una diferencia como tal, recuerda que document es un objeto global de JavaScript que representa al documento, es decir, cualquier nodo que quieras buscar lo va a hacer desde la raíz del documento, y para ese caso se usa document tal cual.

      En cambio, parent no significa nada, esa no es una variable que exista en JavaScript, sin embargo, se usa para representar que ahí puede ir cualquier elemento padre, incluyendo document ya que este también es un elemento padre. Por ejemplo, podrías usar document.getElement... para buscar desde el nodo raíz, o suponiendo que tienes una variable llamada div que contenga un elemento div, podrías usar div.getElement...

      En resumen parent.getElement... es solo una forma de representar que ahí puede ir cualquier nodo padre desde el cuál se empezará a buscar :D

      Jonathan 🦑 Alvarez

      Jonathan 🦑 Alvarez

      teacher•
      hace 5 años

      Gracias @RetaxMaster! Muy buena explicación :D

    Janet Guadalupe Torres Ménera

    Janet Guadalupe Torres Ménera

    student•
    hace 4 años

    ¿Cómo le hace para tener dos consolas?

      Jonathan 🦑 Alvarez

      Jonathan 🦑 Alvarez

      teacher•
      hace 4 años

      Hola Janet!

      A cuáles dos te refieres?

      Si es a la que aparece desde la parte inferior de los DevTools, se abre presionando ESC o manualmente arrastrando la pestaña inferior hasta abrirla.

      Si responde a tu pregunta? :D

    Luis Gabriel Cazzullo

    Luis Gabriel Cazzullo

    student•
    hace 5 años

    Siempre usé querySelector y querySelectorAll. Pero, no entiendo por qué son preferibles a los otros.

      Marcelo Daniel Yudis

      Marcelo Daniel Yudis

      student•
      hace 5 años

      Porque nos da mucha versatilidad al buscar los elementos :D

      Jiovanni Romo

      Jiovanni Romo

      student•
      hace 5 años

      Como comentó Marcelo, querySelector y querySelectorAll nos permiten tener mayor versatilidad y especificidad a la hora de buscar distintos elementos, podemos usar nodeNames, clases CSS, ID's, etc. Mientras que en otros no, o usamos solo clases o solo id's.

    Mariel Gonzalez Yescas

    Mariel Gonzalez Yescas

    student•
    hace 3 años

    https://getbootstrap.com/docs/4.5/examples/checkout/

    David Daniel Castillo Nava

    David Daniel Castillo Nava

    student•
    hace 5 años

    Link de ejemplo de Boostrap

    //Obtienes por nombre de id el elemento let getById = document.getElementById("id"); //Obtienes por nombre de tag el elemento let getByTag = parent.getElementByTagName("tagname"); //Obtienes por el nombre de clase el elemento let getByClass = parent.getElementByClassName("classname"); //Obtiene el primer elemento que cumpla el selector pasado let getByQuery = parent.querySelector(".classname #id o selector formar un selector de regla css"); //Obtiene todos los elementos que cumpla el selector pasado let getByQueryAll = partent.querySelectorAll(".classname #id o selector formar un selector de regla css");
    Anggi Vanesa Pallares Solis

    Anggi Vanesa Pallares Solis

    student•
    hace 4 años
    1.JPG
    Martin Lazzeri

    Martin Lazzeri

    student•
    hace 5 años

    por que no es recomendado utilizar los getElement... y sí es recomendado usar los querySelector?

      David Granados

      David Granados

      student•
      hace 5 años

      Aunque no se porque es recomendado el querySelector la diferencia es el tipo de objetos que retorna cada una, por acá hay un artículo que los explica bastante bien con ejemplos.

      Jenny Aguilar

      Jenny Aguilar

      student•
      hace 5 años

      Cada semana por medio aprox me paso por este post, esperando que alguien lo responda, porque estoy bastante intrigada también sobre por qué NO es recomendado los getElement...

    Alfonso Aguilar Grimaldo

    Alfonso Aguilar Grimaldo

    student•
    hace 5 años

    ¿Siempre vamos a usar el parent o el document para leer los nodos? ¿o hay excepciones?

      Daniel Adolfo Ordoñez Rubio

      Daniel Adolfo Ordoñez Rubio

      student•
      hace 5 años

      Hola, Alfonso :) Si se trata de varios nodos, lo mejor es hacerlo desde el padre porque es el elemento común que los conecta. Si se trata de un solo nodo, puedes usar un selector como su ID o una combinación específica para el nodo que quieras tratar.

      Arturo Mauricio Terceros Beltrán

      Arturo Mauricio Terceros Beltrán

      student•
      hace 5 años

      Si quieres seleccionar un nodo por lo general lo realizamos desde el document para realizar la búsqueda del nodo dese la raíz.

    Daniel Esteban Santos Mendez

    Daniel Esteban Santos Mendez

    student•
    hace 5 años

    ¿Por qué no es recomendable usar ById, ByTagName y ByClassName?

      Carlos Eduardo Gomez García

      Carlos Eduardo Gomez García

      teacher•
      hace 5 años

      En ningún momento se dijo que no sean recomendables, solo no son muy convenientes, ya que son muy específicos, usando document.querySelector tienes mucha más flexibilidad :D

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads