Les événements sont des actions qui se produisent dans le navigateur : un clic, une frappe clavier, un survol de souris, la soumission d'un formulaire... JavaScript peut "écouter" ces événements et réagir.
Applications concrètes : Boutons cliquables, validation de formulaires en temps réel, menus interactifs, animations au survol, raccourcis clavier...
Aujourd'hui : addEventListener(), types d'événements courants, l'objet event, et preventDefault().
La méthode moderne pour écouter les événements. Peut gérer plusieurs listeners sur le même élément.
click : Clic de souris
input : Modification de champ
change : Changement validé
mouseover : Survol
Chaque événement passe un objet event en paramètre contenant des informations utiles.
Empêche le comportement par défaut d'un événement (ex: soumission de formulaire, clic sur lien).
Testez ces exemples dans la console interactive ci-dessus !
Objectifs de ce cours :
✅ Comprendre le système d'événements JavaScript
✅ Utiliser addEventListener() pour écouter les événements
✅ Connaître les types d'événements courants (click, input, change, mouseover)
✅ Exploiter l'objet event pour obtenir des informations
✅ Utiliser preventDefault() pour contrôler le comportement
Points clés à retenir :
• addEventListener('type', callback) : Écouter un événement
• click : Clic de souris (le plus courant)
• input : Saisie temps réel dans un champ (à chaque frappe)
• change : Changement validé (quand le champ perd le focus)
• submit : Soumission de formulaire
• event.target : Élément qui a déclenché l'événement
• event.preventDefault() : Bloquer le comportement par défaut
• Toujours utiliser addEventListener (pas onclick dans le HTML)
Exercice pratique :
1. Créez un bouton qui affiche une alerte au clic
2. Créez un champ input qui affiche sa valeur en temps réel
3. Créez une div qui change de couleur au survol (mouseover/mouseout)
4. Créez un formulaire qui affiche les données au lieu de les envoyer
5. Créez un bouton qui compte le nombre de clics
6. Bonus : Créez un compteur avec boutons + et -
7. Bonus 2 : Détectez la touche Enter dans un champ input (event.key)
