⊗jsSpStGWD 43 of 294 menu

DOM Elementlərinin dublikatsiz alınması

Tutaq ki, bizim abzaslar və düymə var:

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

Istifadəçi bu abzasların üzərinə ixtiyari qaydada klik etsin. Gəlin elə edək ki, düyməyə basıldıqda hər bir klik edilmiş abzasın sonuna nida işarəsi əlavə olunsun. Məsələni Set vasitəsilə həll edək.

Başlayaq. Əvvəlcə elementlərimizi dəyişənlərə əldə edək:

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

Yeni Set kolleksiyası yaradaq:

let set = new Set;

Abzasları dövrə ilə gəzib onlara klik hadisəsi əlavə edək:

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

Gəlin indi abzasa klik edəndə həmin abzası kolleksiyaya əlavə edək:

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

Set kolleksiyasından istifadə etdiyimiz üçün abzasa təkrar klik onun dublikat kimi əlavə olunmasına səbəb olmayacaq.

Gəlin indi düyməyə klik edəndə kolleksiyamızın tərkibini gəzək və hər abzasın sonuna nida işarəsi əlavə edək:

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

Abzaslar və düymə verilib. Istifadəçi bu abzasların üzərinə ixtiyari qaydada klik edir. Elə edin ki, düyməyə basıldıqda hər bir klik edilmiş abzasın sonuna nida işarəsi əlavə olunsun.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et