⊗jsPmTmՑՄԱ 362 of 505 menu

Իվենթների մշակիչների անջատում ցիկլում JavaScript-ում

Ենթադրենք, հիմա մենք ունենք ոչ թե մեկ տարր, այլ մի քանիսը: Օրինակ, մի քանի պարբերություններ:

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

Եկեք այս պարբերություններից յուրաքանչյուրին կլիկի մշակիչով կցենք func ֆունկցիան:

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

Հիմա եկեք փոխենք կոդն այնպես, որ յուրաքանչյուր պարբերություն արձագանքի միայն առաջին դրա վրա կատարված կլիկին: Դրա համար պարբերության վրա կլիկ անելիս մենք կանջատենք դրան կցված մշակիչը: Այս դեպքում անջատումը կկատարվի հենց այս պարբերությունից, առանց մյուսներին դիպչելու:

Ինչպես արդեն գիտեք, այն տարրը, որում տեղի է ունեցել իրադարձությունը, կարելի է ստանալ մշակիչ ֆունկցիայի ներսում this-ի միջոցով: Սա նշանակում է, որ պետք է կատարել մշակիչի անջատում this-ից, ահա այսպես:

let elems = document.querySelectorAll('p'); for (let elem of elems) { elem.addEventListener('click', func); } function func() { console.log(this.textContent); this.removeEventListener('click', func); // անջատում ենք մշակիչը }

Տրված են պարբերություններ: Ցանկացած պարբերության վրա կլիկ անելիս ավելացրեք դրա վերջում բացականչական նշան: Կարգավորեք այնպես, որ այս ավելացումը տեղի ունենա միայն առաջին կլիկի դեպքում:

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել