⊗jsPmDmHU 361 of 505 menu

Notikumu atvienošana JavaScript

Šajā nodarbībā mēs iemācīsimies atvienot notikumu apstrādātājus, kas iepriekš bija piesaistīti elementiem. Piemēram, ir dota šāda poga:

<input id="button" type="submit">

Piesaistīsim šai pogai funkciju func:

let button = document.querySelector('#button'); button.addEventListener('click', func); function func() { console.log('!!!'); }

Tagad darīsim tā, lai notikumu apstrādātājs darbotos pie pirmā klikšķa, bet pēc tam tiktu atvienots no pogas. Šim nolūkam pastāv īpaša metode removeEventListener. Šī metode pirmo parametru pieņem kā notikuma veidu, bet otro - kā atsauci uz funkciju, kuru vajag atvienot.

Parasti tas nozīmē, ka notikumu apstrādātājs tiek atvienots tādā pašā veidā, kā tas tika piesaistīts. Tas ir, ja mēs to piesaistījām šādi: addEventListener('click', func), tad arī atvienosim ar tiem pašiem parametriem, šādi: removeEventListener('click', func).

Tātad, atrisināsim uzdevumu, ko mēs sev izvirzījām:

let button = document.querySelector('#button'); button.addEventListener('click', func); function func() { console.log('!!!'); this.removeEventListener('click', func); }

Dota saite un poga. Nospiežot pogu, pievienojiet saites teksta beigās tās atribūta href saturu apaļās iekavās. Izdariet tā, lai šis pievienošanās notiek tikai pirmo reizi nospiežot.

Dota poga, kuras vērtība ir skaitlis 1. Izdariet tā, lai, klikšķinot uz šīs pogas, tās vērtība katru reizi palielinātos par vienu. Pēc tam, kad pogas vērtība sasniedz 10 - atvienojiet notikumu apstrādātāju, lai poga vairs nereaģētu uz nospiedienu.

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