Interactividad en Botones de Tareas: Borrar y Editar en JavaScript
Clase 21 de 27 • Curso de JavaScript: Manipulación del DOM
Resumen
¿Cómo agregar funcionalidad a los botones de una aplicación de tareas?
El aumento de la funcionalidad en una aplicación es crucial para garantizar una experiencia de usuario fluida y útil. En el contexto de una aplicación para gestionar tareas, la capacidad de editar o eliminar una tarea con un simple clic es de suma importancia. Veamos cómo implementar estas funciones esenciales en una aplicación de lista de tareas utilizando JavaScript.
¿Cómo implementar la delegación de eventos?
La delegación de eventos es una técnica eficaz que se utiliza para gestionar eventos en aplicaciones. Facilita el manejo de eventos en elementos secundarios mediante la vinculación del evento a un elemento padre.
document.querySelector('#task-list').addEventListener('click', event => {
if(event.target.classList.contains('delete')) {
deleteTask(event.target.parentElement);
} else if(event.target.classList.contains('edit')) {
editTask(event.target.parentElement);
}
});
Al asociar el evento click
al elemento padre task-list
, identificamos el elemento específico que fue clicado mediante event.target
. Posteriormente, comprobamos las clases de ese target para determinar la acción correspondiente: eliminar o editar.
¿Cómo borrar una tarea de manera eficiente?
La acción de borrar una tarea es esencial para mantener la lista actualizada y despejada de tareas completadas o irrelevantes.
function deleteTask(taskItem) {
if(confirm("¿Estás segura, seguro, de borrar este elemento?")) {
taskItem.remove();
}
}
Mediante un confirm
, solicitamos al usuario que verifique la acción antes de eliminar la tarea. Si el usuario confirma, utilizamos remove()
para borrar el elemento del DOM.
¿Cuál es el proceso para editar una tarea?
Editar contenido de una tarea mejora la flexibilidad y precisión de nuestro listado.
function editTask(taskItem) {
const newTask = prompt("Edita la tarea:", taskItem.firstChild.textContent);
if(newTask !== null) {
taskItem.firstChild.textContent = newTask;
}
}
Aquí se muestra un prompt
con el contenido actual de la tarea, permitiendo su modificación. Comprobamos que la respuesta no sea null
antes de aplicar el cambio.
En resumen, estos pasos no solo amplían la funcionalidad de nuestra aplicación, sino que también mejoran la interactividad del usuario, volviendo la gestión de tareas más eficiente y amigable. Experimenta implementando estas características para ver cómo se transforma la experiencia del usuario en tu aplicación. Y recuerda, la práctica constante y la exploración son clave para desarrollar habilidades avanzadas en programación.