ejercicio 3: seleccion de elementos con delegacion de eventos

This commit is contained in:
2026-05-24 14:50:02 -03:00
parent e2d03163cb
commit afda7e5f0d
3 changed files with 40 additions and 1 deletions

View File

@@ -15,3 +15,18 @@ const contadorCaracteres = document.getElementById('contadorCaracteres');
campoTexto.addEventListener('input', function() { campoTexto.addEventListener('input', function() {
contadorCaracteres.textContent = `Caracteres ingresados: ${campoTexto.value.length}`; contadorCaracteres.textContent = `Caracteres ingresados: ${campoTexto.value.length}`;
}); });
// Ejercicio 3 - Selección única en la lista con delegación de eventos
const listaItems = document.getElementById('listaItems');
listaItems.addEventListener('click', function(event) {
const item = event.target.closest('li');
if (!item || !listaItems.contains(item)) {
return;
}
listaItems.querySelectorAll('li').forEach(function(li) {
li.classList.remove('seleccionado');
});
item.classList.add('seleccionado');
});

View File

@@ -3,3 +3,21 @@ div {
padding: 10px; padding: 10px;
margin: 10px; margin: 10px;
} }
#listaItems {
list-style: none;
padding: 0;
}
#listaItems li {
cursor: pointer;
padding: 6px;
margin: 4px 0;
border: 1px solid #8a8a8a;
}
#listaItems li.seleccionado {
background-color: #7daa3c;
color: #ffffff;
}

View File

@@ -20,7 +20,13 @@
</div> </div>
<hr> <hr>
<div id="ejercicio-3"> <div id="ejercicio-3">
<!-- Agregar acá el código HTML que haga falta para el ejercicio 3 --> <ul id="listaItems">
<li>Ítem 1</li>
<li>Ítem 2</li>
<li>Ítem 3</li>
<li>Ítem 4</li>
<li>Ítem 5</li>
</ul>
</div> </div>
<hr> <hr>
<div id="ejercicio-4"> <div id="ejercicio-4">