(Le secret des sites qui réagissent, parlent et donnent l’impression d’être vivants)
Imagine un instant…
Tu ouvres un site web.
Il y a un bouton → tu cliques… rien
Un champ de texte → tu écris… silence radio
Tu scrolles → le néant absolu 🫥
Ce site-là n’a clairement jamais entendu parler des événements JavaScript.
Les events, ce sont eux qui donnent aux pages web :
- Une âme 🧠
- Du mouvement 🕺
- Une vraie conversation avec l’utilisateur 💬
Dans cet article, on va voir les événements JavaScript :
- Depuis les bases
- Avec plein d’exemples concrets
- Des astuces utiles en vrai projet
- Le tout avec de l’humour, mais une technique bien solide 💪
🎯 Qu’est-ce qu’un événement ? (À graver dans le cerveau)
Un événement (event), c’est tout simplement :
👉 Une action effectuée par l’utilisateur ou le navigateur
Exemples très concrets :
- Cliquer →
click - Taper au clavier →
keydown,input - Envoyer un formulaire →
submit - Charger une page →
load - Bouger la souris →
mouseover
JavaScript dit :
« Quelque chose se passe ? J’arrive. »
🧠 Le fonctionnement des événements (La règle d’or)
Tous les événements suivent la même logique magique :
ÉLÉMENT + ÉVÉNEMENT + ACTION
Autrement dit :
« Quand CET événement se produit sur CET élément, FAIS ÇA »
Si tu comprends ça, ton chemin en frontend devient beaucoup plus clair 🚀
1️⃣ click – Le clic qui change tout 🖱️
L’événement le plus utilisé au monde (oui, carrément) : click
🔹 HTML
<button id="btn">Clique-moi</button>
🔹 JavaScript
const button = document.getElementById("btn");
button.addEventListener("click", () => {
console.log("Le bouton a été cliqué !");
});
🧠 Explication simple
getElementById→ on attrape le boutonaddEventListener→ on dit à JS « écoute bien »"click"→ l’événement() => {}→ ce qui se passe quand on clique
JavaScript est littéralement en mode :
« Dis-moi quand quelqu’un clique » 😄
🎯 Exemple pratique : mode sombre 🌙
button.addEventListener("click", () => {
document.body.classList.toggle("dark");
});
📌 Cas d’usage :
- Dark / light mode
- Ouvrir un menu
- Afficher une popup
- Lancer une animation
2️⃣ mouseover & mouseout – Le survol version JS 🐭
Quand la souris entre sur un élément :
button.addEventListener("mouseover", () => {
button.style.backgroundColor = "orange";
});
Quand la souris sort :
button.addEventListener("mouseout", () => {
button.style.backgroundColor = "";
});
🧠 À retenir
mouseover→ la souris arrivemouseout→ elle s’en va (sans dire au revoir 😅)
Quand le CSS :hover ne suffit plus, JavaScript prend le relais.
3️⃣ keydown / keyup – Le clavier entre en jeu ⌨️
Quand l’utilisateur appuie sur une touche :
document.addEventListener("keydown", (event) => {
console.log(event.key);
});
🧠 Ce que tu récupères
event→ toutes les infos de l’actionevent.key→ la touche pressée
if (event.key === "Enter") {
alert("Tu as appuyé sur Entrée !");
}
🎮 Jeux, raccourcis clavier, validation de formulaires…
Le clavier est une mine d’or.
4️⃣ input – Réagir pendant la saisie ✍️
<input type="text" id="search">
const input = document.getElementById("search");
input.addEventListener("input", () => {
console.log(input.value);
});
🧠 Pourquoi c’est puissant ?
- Se déclenche à chaque caractère
- Fonctionne en temps réel
📌 Utilisations classiques :
- Barre de recherche
- Validation instantanée
- Suggestions automatiques
5️⃣ submit – Le boss des formulaires 📤
<form id="form">
<input type="text">
<button>Envoyer</button>
</form>
const form = document.getElementById("form");
form.addEventListener("submit", (e) => {
e.preventDefault();
console.log("Formulaire intercepté !");
});
🧠 Point crucial
preventDefault()empêche le rechargement de la page
JavaScript dit :
« Laisse, je gère le formulaire. »
Le web moderne = submit + preventDefault
6️⃣ load – Quand la page est prête 🚀
window.addEventListener("load", () => {
console.log("La page est entièrement chargée");
});
📌 À utiliser pour :
- Appels API
- Démarrer des animations
- Initialiser l’application
7️⃣ L’objet event – Le détective 🕵️♂️
button.addEventListener("click", (event) => {
console.log(event.target);
});
🧠 Il te dit tout :
- Quel élément a déclenché l’événement
- Où se trouve la souris
- Quelle touche a été pressée
JavaScript te donne le rapport complet de l’incident 📄
8️⃣ Event Bubbling – L’événement remonte 🫧
<div id="box">
<button id="btn">Clique</button>
</div>
box.addEventListener("click", () => {
console.log("Div cliqué");
});
btn.addEventListener("click", () => {
console.log("Bouton cliqué");
});
📌 Résultat :
Bouton cliqué
Div cliqué
L’événement remonte de l’intérieur vers l’extérieur.
9️⃣ Event Delegation – Niveau expert 🎓
document.addEventListener("click", (e) => {
if (e.target.tagName === "BUTTON") {
console.log("Un bouton a été cliqué");
}
});
🧠 Avantages
- Meilleures performances
- Fonctionne avec des éléments dynamiques
- Moins de code
Un développeur frontend qui maîtrise ça se démarque clairement 😎
⚠️ Erreurs courantes
❌ Événements inline :
<button onclick="clickMe()">❌</button>
✅ Bonne pratique :
addEventListener
❌ Un event par élément
✅ Delegation intelligente
🧠 Conseils en or (à sauvegarder)
✨ Les events = interaction
✨ addEventListener est la norme moderne
✨ Comprendre l’objet event = super-pouvoir
✨ Peu d’events, mais bien placés
✨ De petites animations font une grande différence
🎬 Conclusion
Sans événements JavaScript :
- Le site est muet
- L’utilisateur s’ennuie
- L’expérience est plate
Avec les events :
- Le site parle 🗣️
- Réagit ⚡
- Prend vie 🎉
Si tu as bien assimilé tout ça, tu peux dire sans trembler :
« Je suis officiellement sur la voie du frontend. » 😎🔥

