209 of 264 menu

Az addEventListener metódus

Az addEventListener metódus lehetővé teszi elemekhez eseménykezelők rendelését. Segítségével meghatározhatjuk például, hogy mit tegyen egy gomb klikkelésekor, vagy mit tegyen szöveg beírásakor egy szövegmezőbe. Az első paraméterben az esemény típusát adjuk meg, a másodikban pedig a függvényt, amely az első paraméterben megadott esemény bekövetkeztekor fog aktiválódni. A harmadik, opcionális paraméterben az objektum jellemzőit (once, capture, passive) vagy a useCapture paramétert adjuk át.

Szintaxis

elem.addEventListener('eseménytípus', függvény, [objektum jellemzők]); vagy elem.addEventListener('eseménytípus', függvény, [useCapture]);

Példa

Állítsuk be, hogy egy gombra kattintáskor üzenet jelenjen meg:

<input type="button" id="button" value="click me"> let button = document.querySelector('#button'); button.addEventListener('click', function() { alert('message'); });

:

Példa

Írjunk kódot, amely egy input fókuszvesztésekor kiírja annak szövegét egy üzenetben:

<input id="input" value="text"> let input = document.querySelector('#input'); input.addEventListener('blur', function() { alert(this.value); });

:

Példa

Állítsuk be, hogy egy gombra kattintáskor az üzenet csak egyszer jelenjen meg a konzolon. Ehhez használjuk a harmadik paramétert:

<input type="button" id="button" value="click me"> let button = document.querySelector('#button'); button.addEventListener('click', function() { console.log('message'); }, { once: true } );

Példa

A passive paraméter megtiltja az event.preventDefault metódus hívását az esemény feldolgozása során. Alkalmazzuk az event.preventDefault metódust az előző példára, és adjuk meg a passive paramétert true értékkel:

<input type="button" id="button" value="click me"> let button = document.querySelector('#button'); button.addEventListener('click', function(event) { event.preventDefault(); console.log('No message'); }, { passive: true } );

A kód végrehajtása után a következő üzeneteket látjuk:

'No message'; 'Unable to preventDefault inside passive event listener invocation.'

Példa

A useCapture paraméter true értéke esetén az események a belső elemtől a külső felé bugyognak (capturing), false érték esetén pedig a külső elemtől a belső felé (bubbling). A useCapture paraméter átadásakor a név elhagyható, és egyszerűen true vagy false értéket írunk. Nézzük meg, hogyan bugyognak az események a szülő és a gyermekelemben, amikor rájuk kattintunk:

<div id="parent">Parent <p id="child">Child</p> </div> #parent{ width: 60px; padding: 10px; border: 1px solid red; text-align: center; } #child{ width: 60px; marging-right: 40px; border: 1px solid blue; text-align: center; } let parent = document.querySelector('#parent'); let child = document.querySelector('#parent'); parent.addEventListener('click', () => alert('parent'), true ); child.addEventListener('click', () => alert('child'), true );

:

Lásd még

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