209 of 264 menu

Metóda addEventListener

Metóda addEventListener umožňuje priradiť prvku obslužné funkcie udalostí. S jej pomocou môžete určiť, napríklad, čo sa má robiť pri kliknutí na tlačidlo alebo čo sa má robiť pri písaní textu do textového poľa. V prvom parametri špecifikujeme typ udalosti, v druhom - funkciu, ktorá sa spustí po udalosti špecifikovanej v prvom parametri. V treťom voliteľnom parametri odovzdávame charakteristiky objektu (once, capture, passive) alebo parameter useCapture.

Syntax

prvok.addEventListener('typ udalosti', funkcia, [charakteristiky objektu]); alebo prvok.addEventListener('typ udalosti', funkcia, [useCapture]);

Príklad

Poďme urobiť to, aby sa po kliknutí na tlačidlo zobrazila správa:

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

:

Príklad

Poďme napísať kód, aby sa po strate fokusu v inpute zobrazila správa s textom tohto inputu:

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

:

Príklad

Poďme urobiť to, aby sa po kliknutí na tlačidlo správa vypísala do konzoly iba raz. Na to využijeme tretí parameter:

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

Príklad

Parameter passive zakazuje volať metódu event.preventDefault pri spracovaní udalosti. Poďme k predchádzajúcemu príkladu aplikovať metódu event.preventDefault, a tiež špecifikujme v parametri passive hodnotu true:

<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 } );

Po vykonaní kódu uvidíme nasledujúce správy:

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

Príklad

Parameter useCapture s hodnotou true zobrazuje bublanie udalostí od vnútorného prvku k vonkajšiemu, pri hodnote false - od vonkajšieho k vnútornému prvku. Pri odovzdávaní parametra useCapture sa jeho názov vynecháva a zapíše sa jednoducho true alebo false. Poďme sa pozrieť, ako bublajú udalosti v nadradenom a podriadenom prvku po kliknutí na ne:

<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 );

:

Pozri tiež

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť