⊗jsPmOEBUs 428 of 505 menu

Az eseménybuborékolás megállításának alkalmazása JavaScriptben

Tegyük fel, hogy egy szülőn belül van egy gomb és egy bizonyos blokk:

<div id="parent"> <button>click me</button> <div id="block"> text </div> </div>

Kapjuk meg az elemekre mutató hivatkozásokat változókba:

let parent = document.querySelector('#parent'); let button = document.querySelector('button'); let block = document.querySelector('#block');

Tegyük fel, hogy a blokkunk eredetileg rejtett:

#block:not(.active) { display: none; }

Tegyük úgy, hogy a gombra kattintáskor a blokkunk megjelenjen:

button.addEventListener('click', function() { block.classList.add('active'); });

Most pedig tegyük úgy, hogy a szülő bármely pontjára kattintáskor a blokkunk elrejtődjön:

parent.addEventListener('click', function() { block.classList.remove('active'); });

Azonban váratlan meglepetés ér minket: mivel a gomb a szülőn belül van, a gombra kattintás egyben a szülőre kattintást is jelenti. Ez azt jelenti, hogy először a blokkunk megjelenik, majd az esemény buborékolása miatt a szülőben lévő kezelő aktiválódik, és a blokkunk elrejtődzik.

Itt jön jól a buborékolás megállításának lehetősége: elérhetjük, hogy a gombra kattintáskor a buborékolást megállítva, a szülő ne reagáljon erre a kattintásra.

Valósítsa meg önállóan a leírt feladat helyes működését.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás