Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

Vista previa

Eventos: clics y teclas

Esta es la primera página de la lección. Léela y prueba las actividades. El resto está en el curso completo.

40 minutos

El timbre de la puerta

Un timbre no hace nada hasta que alguien lo pulsa. Entonces suena.

Una página funciona igual. Hasta ahora tu script se ejecutaba al cargar, una sola vez. Con eventos, la página espera y reacciona cuando el usuario hace algo.

Palabras clave

PalabraQué significaEjemplo
EventoAlgo que pasa en la página: un clic, una tecla, un texto escrito.click
addEventListenerDice a un elemento: cuando pase este evento, ejecuta esta función.button.addEventListener('click', ...)
Función de respuestaLa función que se ejecuta cuando salta el evento.function () { ... }
eventUn objeto que da datos del evento, como la tecla pulsada.event.key
valueEl texto que hay escrito ahora en un campo.field.value
setIntervalRepite una función cada cierto tiempo, en milisegundos.setInterval(f, 1000)

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Antes de empezar: una función es un valor

Para los eventos necesitas una idea nueva. Una función se puede guardar y entregar a otra, como cualquier dato.

Mira la diferencia entre sayHello y sayHello(). Con paréntesis la llamas ahora. Sin paréntesis solo la entregas.

Pruébalo: pasar una función

Código: node
// Una función se puede guardar y pasar como cualquier valor.
function sayHello() {
  console.log('¡Hola desde la función!');
}

function doThreeTimes(action) {
  action();
  action();
  action();
}

// Le pasamos la función sin paréntesis: todavía no la llamamos.
doThreeTimes(sayHello);

Reaccionar a un clic

Buscas el botón, y le dices dos cosas: qué evento esperas y qué función ejecutar.

button.addEventListener('click', function () { ... });

Dentro de la función va lo que quieres que pase cada vez que alguien pulse.

Pruébalo: un contador

Código: web
<h1>Bocadillos vendidos</h1>
<p id="count"></p>
<button id="add">Uno más</button>

Ejemplo resuelto: eventos que vas a usar

EventoCuándo saltaSe pone en
clickAl hacer clic o tocarUn botón o cualquier elemento
inputCon cada cambio del textoUn campo de texto
keydownAl pulsar una tecladocument
submitAl enviar un formularioEl formulario

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Repaso rápido: eventos

Inténtalo

Repaso rápido: eventos

3 preguntas
Pruébalo: tus respuestas se corrigen aquí y después se olvidan. Inicia sesión si quieres que se guarde tu puntuación y continuar donde lo dejaste.Iniciar sesión para guardar tu puntuación

Tus respuestas se corrigen aquí y no se guardan. Una cuenta guarda tus resultados.

Reaccionar a lo que escribes

Un campo de texto lanza el evento input con cada letra. Dentro de la función lees field.value, que es el texto de ahora mismo.

Así puedes enseñar un saludo mientras la persona escribe.

La lección continúa

8 partes más de esta lección están en el curso completo, con los ejercicios y la comprobación final. Una cuenta te da todo.