3.9 Javascript: Interactividad mediante eventos
Introducir la lógica básica de JavaScript en el navegador. Detectar acciones del usuario (como clics) y cambiar contenido o estilos en la página usando eventos simples.
Introducir la lógica básica de JavaScript en el navegador. Detectar acciones del usuario (como clics) y cambiar contenido o estilos en la página usando eventos simples.
Desde mostrar una alerta, cambiar el color de un botón hasta detonar efectos visuales, javascript es el motor que reacciona a lo que hace el usuario.
JavaScript se puede escribir de tres formas principales:
1. Código en línea
Se escribe dentro de un atributo HTML, como onclick.
<button onclick="alert('¡Hola mundo!')">Haz clic</button>
2. Código dentro del mismo archivo HTML
Integrado, dentro de una etiqueta <script> en el mismo archivo HTML.
<button onclick="saludar()">Haz clic</button><script>function saludar() {alert("¡Hola mundo!");}</script>
3. Código en un archivo externo
Externo, en un archivo separado con extensión .js que se enlaza al HTML.
<!-- HTML --><script src="app.js"></script>// app.jsalert("¡Hola mundo desde un archivo externo!");
Se basa en instrucciones bien organizadas:
let, const o var.(), llaves {} y a veces punto y coma ;.Tipos de datos básicos:
"Hola"
42, 3.14
true o false
Declaración de variables:
let → opción común y flexibleconst → para valores fijosvar → forma antigua, en desusolet nombre = "Juan"; // Texto (String)let edad = 25; // Número (Numberconsole.log(nombre); // Imprime el valor en la consola
Un evento es cualquier cosa que ocurre en la página: un clic, una tecla presionada, un campo completado, etc. Cuando ocurre un evento, podemos ejecutar una función como respuesta.
Esta es la base de la interactividad en la web, estos son algunos comunes:
click: al presionar un botóninput: al escribir en un camposubmit: al enviar un formularioLa forma más común de trabajar con ellos es usando addEventListener(), que permite asociar una acción a un evento específico.
document.addEventListener('click', () => {alert('¡Haz hecho clic!');});const boton = document.querySelector('button');boton.addEventListener('click', function() {alert('Hola Ana');});
Es necesaria la selección para poder aplicar eventos o modificar su contenido o estilo.
document.querySelector() con selectores como en CSS (.clase, #id, etiqueta)getElementById, getElementsByClassName o querySelectorAll()
<button class="saludo">Saludar</button><script>const boton = document.querySelector('.saludo');</script>
Puedes ejecutar cualquier función cuando un botón es presionado: mostrar un mensaje, agregar contenido, cambiar un color, ocultar un elemento o activar una animación.
click se dispara cada vez que el usuario presiona un botón del mouseconst boton = document.querySelector('button#agregar-tarea');boton.addEventListener('click', () => {//Lógica para agregar tareaconsole.log('Tarea agregada');});
Esto permite respuestas visuales inmediatas que enriquecen la experiencia del usuario.
.textContent cambia el texto sin interpretar HTML.innerHTML permite insertar o reemplazar HTML completo.setAttribute actualiza propiedades como src, href, alt, etc..remove() o duplicarlos con .cloneNode()
document.querySelector('h1').textContent = '¡Tarea añadida!';
Puedes modificar estilos directamente desde JavaScript para reflejar una acción del usuario y brindar retroalimentación visual inmediata.
.style para aplicar estilos directamente (sobrescribe el CSS).classList.add() puedes aplicar clases CSS ya definidas.classList.toggle() puedes alternar clases según un estadoconst boton = document.querySelector('button');boton.addEventListener('click', () => {boton.style.backgroundColor = 'green';});
Ya aprendiste cómo JavaScript puede detectar eventos y reaccionar a ellos para construir experiencias dinámicas e interactivas. Pero como en todo proceso de aprendizaje en programación, la clave está en la práctica constante.
Recursos para seguir desarrollando tus habilidades.
¡Nos vemos en la próxima clase!