⊗jsPmOEED 431 of 505 menu

Delega degli eventi in JavaScript

Nella lezione precedente è stato descritto un problema che si verifica quando si aggiungono nuovi elementi, e ne è stata fornita una soluzione. In questa lezione considereremo un modo più efficace per evitare il problema - delega degli eventi. Analizziamolo.

Come già sapete, cliccando su un li, clicchiamo simultaneamente anche sul ul. Ciò è possibile grazie alla propagazione degli eventi. Possiamo utilizzare questo per risolvere il nostro compito: assegneremo l'evento non a ogni singolo li, ma al loro genitore ul:

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

Ora nel gestore dell'evento this indicherà l'elemento a cui è associato il gestore, mentre event.target - l'elemento in cui si è verificato l'evento:

list.addEventListener('click', function(event) { console.log(this); // la nostra lista console.log(event.target); // l'elemento della lista });

Facciamo in modo che il li su cui è avvenuto il click, aggiunga un punto esclamativo alla fine:

list.addEventListener('click', function(event) { event.target.textContent = event.target.textContent + '!'; });

Ripetete la soluzione fornita. Assicuratevi che anche i nuovi li reagiranno al click.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta