⊗jsPmOEUED 432 of 505 menu

JavaScript-də Universal Hadisə Delegasiyası

Əvvəlki dərsdə verilmiş kod işləkdir, lakin, çatışmazlıqları yox deyil. Gəlin bu çatışmazlıqları araşdıraq və daha universal həll yazaq.

Kodumuzun çatışmazlığı o zaman özünü göstərəcək ki, li-nin daxilində bəzi daxili teqlər olsun. Bizim vəziyyətimizdə bunlar i teqləri olsun:

<ul> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> <li>item <i>italic</i> item</li> </ul>

Bu halda i teqinə klikləmək i teqinin sonunda nida işarəsi əlavə edilməsi ilə nəticələnəcək, li teqinin sonunda deyil, istədiyimiz kimi - çünki event.target hadisənin baş verdiyi dəqiq teq olur.

Problem closest metodu ilə həll edilə bilər:

list.addEventListener('click', function(event) { let li = event.target.closest('li'); if (li) { li.innerHTML = li.innerHTML + '!'; } });

Göstərilən həlli təkrarlayın.

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