diff --git a/clase-9.js b/clase-9.js index ed51aff..73a911d 100644 --- a/clase-9.js +++ b/clase-9.js @@ -50,3 +50,31 @@ lista.addEventListener("click", function (e) { e.target.classList.add("seleccionado"); } }); + +//EJERCICIO 4 + +// 1. Selecciono los tres elementos del DOM utilizando sus IDs y etiquetas +const externo = document.querySelector("#externo"); +const interno = document.querySelector("#interno"); +const botonej4 = document.querySelector("#boton-ej4"); + +// 2. Registro de un listener en fase de Capturing (Descenso). Al pasar 'true' como tercer argumento, este código se ejecuta primero, +// cuando el evento baja desde la raíz del DOM hacia el botón. +externo.addEventListener("click", function () { + console.log("externo capturing"); +}, true); + +// 3. Registro de listeners en fase de Bubbling (Ascenso) +// Estos listeners no tienen un tercer argumento (o es 'false' por defecto), +// por lo que se ejecutan cuando el evento sube desde el elemento origen. +botonej4.addEventListener("click", function () { + console.log("boton"); +}); + +interno.addEventListener("click", function () { + console.log("interno"); +}); + +externo.addEventListener("click", function () { + console.log("externo"); +}); \ No newline at end of file diff --git a/index.html b/index.html index 2884a7f..bf8fb0a 100644 --- a/index.html +++ b/index.html @@ -33,6 +33,11 @@