⊗jsPmOEED 431 of 505 menu

Notikumu deleģēšana JavaScript

Iepriekšējā nodarbībā tika aprakstīta problēma, kas rodas, pievienojot jaunus elementus, un piedāvāts tās risinājums. Šajā nodarbībā mēs apskatīsim veiksmīgāku veidu, kā apiet šo problēmu - notikumu deleģēšanu. Apskatīsim to tuvāk.

Kā jūs jau zināt, noklikšķinot uz li, mēs vienlaikus noklikšķinām arī uz ul. Tas ir iespējams, pateicoties notikumu izplatīšanās (burbuļošanās) mehānismam. Mēs varam izmantot to savam uzdevumam: pievienosim notikumu nevis katram li, bet to vecākam elementam ul:

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

Tagad notikuma apstrādes funkcijā this norādīs uz elementu, kuram ir piesaistīta apstrādes funkcija, bet event.target - uz elementu, kurā notika notikums:

list.addEventListener('click', function(event) { console.log(this); // mūsu saraksts console.log(event.target); // saraksta punkts });

Padarīsim tā, lai li, uz kuras notika klikšķis, beigās tiktu pievienots izsaukuma zīme:

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

Atkārtojiet iepriekš minēto risinājumu. Pārliecinieties, ka arī jaunie li reaģēs uz klikšķi.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt