⊗jsPmDmLNH 359 of 505 menu

JavaScript-də dövrədə hadise emalçılarının əlavə edilməsi

Gəlin indi elementlərə kütləvi şəkildə hadise emalçıları əlavə etməyi öyrənək. Məsələn, tutaq ki, bizim abzaslarımız var:

<p>mətn1</p> <p>mətn2</p> <p>mətn3</p>

Tutaq ki, bizim həmçinin bir funksiyamız var:

function func() { console.log('!'); }

Gəlin abzalarımızı dövrədə gəzək və hər bir abzaya klik hadisesi üçün emalçı kimi func funksiyasını əlavə edək:

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

Gəlin daha da irəli gedək və edək ki, istənilən abzasa klik edildikdə o abzasın mətni çap edilsin. Lakin bir problem var: abzaslar çoxdur, amma emalçı funksiya bir dənədir. Bəs biz abzaları emalçı funksiyanın içərisində necə ayırd edə bilərik?

Bunda bizə this obyekti kömək edəcək - hadisə baş verən zaman funksiya çağırılanda bu obyekt hadisənin baş verdiyi elementi göstərəcək. func funksiyamızın kodunu deyilənlərə uyğun olaraq dəyişək:

function func() { console.log(this.textContent); // abzasın mətnini çap edirik }

Aşağıdakı funksiya verilmişdir:

function func() { this.value = Number(this.value) + 1; }

Inputlar da verilmişdir. Edin ki, bizim istənilən inputda fokus itirildikdə yuxarıda göstərilən funksiya işləsin.

Rəqəmləri olan abzaslar verilmişdir. Edin ki, istənilən abzasa klik edildikdə onun içindəki rəqəm kvadrata yüksəldilsin.

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