Nozioni di base su addEventListener
Colleghi i gestori agli elementi per gli eventi.
Nozioni di base su addEventListener è una lezione JavaScript Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento JavaScript Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso JavaScript Academy include 4 lezioni in totale.
Rispondere agli eventi
Gli eventi permettono al codice di reagire alle azioni dell'utente, come clic, pressione di tasti e invio di moduli. addEventListener è il modo standard per registrare un listener.
Sintassi di base
Chiami addEventListener specificando il nome di un evento e una funzione gestore. Il gestore viene eseguito ogni volta che si verifica l'evento.
const btn = document.querySelector("button");
btn.addEventListener("click", () => {
console.log("Clicked!");
});Gestori con nome
Può passare una funzione con nome. In questo modo il codice rimane organizzato e, soprattutto, può rimuovere il listener in seguito.
function handleClick() {
console.log("Clicked!");
}
btn.addEventListener("click", handleClick);Più listener
A differenza della precedente proprietà onclick, può associare molti listener allo stesso evento senza che si sovrascrivano.
btn.addEventListener("click", logClick);
btn.addEventListener("click", trackAnalytics);removeEventListener
Per smettere di ascoltare un evento, chiami removeEventListener usando lo stesso nome dell'evento e lo stesso riferimento alla funzione utilizzati per aggiungerlo.
btn.addEventListener("click", handleClick);
btn.removeEventListener("click", handleClick);Le funzioni anonime non possono essere rimosse
Una funzione freccia inline crea un nuovo riferimento ogni volta, quindi non può essere rimossa in seguito. Utilizzi un riferimento con nome se deve poterla rimuovere.
btn.addEventListener("click", () => doThing());
// no way to remove this exact listenerL'opzione once
Passare { once: true } rimuove automaticamente il listener dopo la sua prima esecuzione.
btn.addEventListener("click", init, { once: true });L'opzione capture
Per impostazione predefinita, i listener vengono eseguiti durante la fase di bubbling. { capture: true } fa sì che vengano eseguiti invece durante la fase di capturing.
parent.addEventListener("click", handler, { capture: true });L'opzione passive
{ passive: true } garantisce che non chiamerà preventDefault, permettendo al browser di ottimizzare le prestazioni dello scorrimento.
window.addEventListener("scroll", onScroll, { passive: true });L'opzione signal
Un segnale di AbortController consente di rimuovere uno o più listener eseguendo un'operazione di abort, una soluzione utile per la pulizia.
const controller = new AbortController();
btn.addEventListener("click", handler, { signal: controller.signal });
controller.abort(); // removes the listenerthis nei gestori
In un gestore definito come funzione normale, this si riferisce all'elemento a cui è associato il listener. Le funzioni freccia non riassegnano this.
btn.addEventListener("click", function () {
console.log(this); // the button element
});Verifica rapida
Verifichi le regole di rimozione.
Riepilogo
addEventListener(type, handler, options) registra gli eventi e supporta più listener. Li rimuova con removeEventListener utilizzando lo stesso riferimento, quindi preferisca le funzioni con nome. Tra le opzioni utili ci sono once, capture, passive e signal. Nei gestori normali, this è l'elemento di destinazione.
Domande Frequenti
La lezione «Nozioni di base su addEventListener» è gratuita?
Sì — il testo completo di «Nozioni di base su addEventListener» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso JavaScript Academy, passa a CoddyKit PRO. Il corso JavaScript Academy include 4 lezioni in totale.
Cosa imparerò in «Nozioni di base su addEventListener»?
Colleghi i gestori agli elementi per gli eventi. Eserciti JavaScript Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare JavaScript Academy?
Non è richiesta alcuna esperienza precedente. JavaScript Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.
Quanto tempo richiede la lezione «Nozioni di base su addEventListener»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione JavaScript Academy?
Sì. Ogni lezione JavaScript Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Nozioni di base su addEventListener
- L'oggetto Event
- preventDefault e stopPropagation
- Eventi da tastiera e mouse