⊗jsPmOEUED 432 of 505 menu

Universell delegasjon av hendelser i JavaScript

Koden presentert i forrige leksjon er funksjonell, men den har noen ulemper. La oss analysere disse ulempene og skrive en mer universell løsning.

Ulempen med koden vår vil vises i tilfellet når det inne i li er noen nestede tagger. I vårt tilfelle, la disse være taggene i:

<ul> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> </ul>

I dette tilfellet vil et klikk på taggen i føre til tillegget av et utropstegn på slutten av taggen i, og ikke taggen li, som vi ønsker - tross alt, i event.target kommer nettopp den taggen der hendelsen inntraff.

Problemet kan løses ved hjelp av metoden closest:

list.addEventListener('click', function(event) { let li = event.target.closest('li'); if (li) { li.innerHTML = li.innerHTML + '!'; } });

Gjenta den presenterte løsningen.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis