⊗jsPmDmLHU 362 of 505 menu

Sündmuste käitlejate lahtiseostamine tsüklis JavaScriptis

Olgu nüüd meil mitte üks element, vaid mitu. Näiteks mitu lõiku:

<p>text1</p> <p>text2</p> <p>text3</p>

Seostame iga selle lõiguga kliki käitlejana funktsiooni func:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', func); } function func() { console.log(this.textContent); }

Muudame nüüd koodi nii, et iga lõik reageeriks ainult esimesele vajutusele sellele. Selleks lõigu peale klõpsates seostame sellest lahti sellele seotud käitleja. Samal ajal toimub lahtiseostamine konkreetselt selle lõigu puhul, teisi puudutamata.

Nagu te juba teate, elementi, milles sündmus toimus, saab käitlejafunktsioonis kätte läbi this. See tähendab, et tuleb käivitada käitleja lahtiseostamine this-ist, niimoodi:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', func); } function func() { console.log(this.textContent); this.removeEventListener('click', func); // seostame käitleja lahti }

Antud on lõigud. Iga lõigu peale vajutamisel lisage selle lõppu hüüumärk. Tehke nii, et see lisamine toimuks ainult esimesel vajutusel.

Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu