209 of 264 menu

Metode addEventListener

Metode addEventListener ļauj piešķirt elementam notikumu apstrādes funkcijas. Ar tās palīdzību var norādīt, piemēram, ko darīt, noklikšķinot uz pogas vai ko darīt, ierakstot tekstu teksta laukā. Pirmajā parametrā mēs norādām pārraidāmā notikuma veidu, otrajā - funkciju, kas darbosies pēc pirmajā parametrā norādītā notikuma. Trešajā neobligātajā parametrā mēs nododam objekta raksturojumus (once, capture, passive) vai parametru useCapture.

Sintakse

element.addEventListener('notikuma veids', funkcija, [objekta raksturojumi]); vai element.addEventListener('notikuma veids', funkcija, [useCapture]);

Piemērs

Izveidosim tā, lai, noklikšķinot uz pogas, tiktu izvadīts ziņojums:

<input type="button" id="button" value="noklikšķini uz manis"> let button = document.querySelector('#button'); button.addEventListener('click', function() { alert('ziņojums'); });

:

Piemērs

Uzrakstīsim kodu, lai, zaudējot fokusu ievades laukā, tiktu izvadīts ziņojums ar šī ievades lauka tekstu:

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

:

Piemērs

Izveidosim tā, lai, noklikšķinot uz pogas, ziņojums tiktu izvadīts konsolē tikai vienu reizi. Lai to izdarītu, izmantosim otro parametru:

<input type="button" id="button" value="noklikšķini uz manis"> let button = document.querySelector('#button'); button.addEventListener('click', function() { console.log('ziņojums'); }, { once: true } );

Piemērs

Parametrs passive aizliedz izsaukt metodi event.preventDefault, apstrādājot notikumu. Piemērosim iepriekšējā piemērā metodi event.preventDefault, kā arī norādīsim parametrā passive vērtību true:

<input type="button" id="button" value="noklikšķini uz manis"> let button = document.querySelector('#button'); button.addEventListener('click', function(event) { event.preventDefault(); console.log('Nav ziņojuma'); }, { passive: true } );

Pēc koda izpildes mēs redzēsim šādus ziņojumus:

'Nav ziņojuma'; 'Unable to preventDefault inside passive event listener invocation.'

Piemērs

Parametrs useCapture ar vērtību true parāda notikumu izplatīšanos no iekšējā elementa uz ārējo, bet ar vērtību false - no ārējā uz iekšējo elementu. Padodot parametru useCapture, tā vārds tiek izlaists un ierakstīts vienkārši true vai false. Apskatīsim, kā notikumi izplatās vecāka un pakārtotajos elementos, uz tiem noklikšķinot:

<div id="parent">Vecāks <p id="child">Bērns</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('vecāks'), true ); child.addEventListener('click', () => alert('bērns'), true );

:

Skatiet arī

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt