⊗jsSpStGWD 43 of 294 menu

Marrja e elementeve DOM pa përsëritje

Le të supozojmë se kemi disa paragrafë dhe një buton:

<p>aaa</p> <p>bbb</p> <p>ccc</p> <p>ddd</p> <p>eee</p> <button>click me</button>

Le të supozojmë se përdoruesi klikon në këta paragrafë në mënyrë të rastësishme. Le të bëjmë që, gjatë klikimit në buton, në fund të çdo paragrafi në të cilin është kryer një klikim, të shtohet një pikëçuditëse. Le ta zgjidhim këtë detyrë duke përdorur Set.

Le të fillojmë. Së pari, le të marrim elementet tona në variabla:

let button = document.querySelector('button'); let elems = document.querySelectorAll('p');

Le të krijojmë një koleksion të ri Set:

let set = new Set;

Le të përsërisim paragrafët me një cikël dhe t'u caktojmë atyre një përpunues klikimi:

for (let elem of elems) { elem.addEventListener('click', function() { }); }

Tani, le të shtojmë këtë paragraf në koleksion kur klikohet në paragraf:

for (let elem of elems) { elem.addEventListener('click', function() { set.add(this); }); }

Për shkak se ne përdorim koleksionin Set, klikimi i përsëritur në një paragraf nuk do të çojë në shtimin e një përsëritjeje të paragrafit.

Tani, le të klikojmë në buton dhe të përsërisim përmbajtjen e koleksionit tonë dhe çdo paragrafi në fund të shtojmë një pikëçuditëse:

button.addEventListener('click', function() { for (let elem of set) { elem.textContent = elem.textContent + '!'; } });

Janë dhënë disa paragrafë dhe një buton. Përdoruesi klikon në këta paragrafë në mënyrë të rastësishme. Bëni që gjatë klikimit në buton, në fund të çdo paragrafi në të cilin është kryer një klikim, të shtohet një pikëçuditëse.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo