⊗jsPmDmHU 361 of 505 menu

Desvinculación de eventos en JavaScript

En esta lección aprenderemos a desvincular manejadores de eventos que previamente habíamos vinculado a elementos. Supongamos como ejemplo que tenemos el siguiente botón:

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

Vinculemos a este botón la función func:

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

Ahora hagamos que el manejador del evento se active en el primer clic, y luego se desvincule del botón. Para esto existe un método especial removeEventListener. Este método acepta como primer parámetro el tipo de evento, y como segundo - una referencia a la función que necesita ser desvinculada.

Generalmente, esto significa que el manejador del evento se desvincula de la misma manera que se vinculó. Es decir, si lo vinculamos así: addEventListener('click', func), entonces lo desvincularemos con los mismos parámetros, así: removeEventListener('click', func).

Entonces, resolvamos la tarea que nos hemos propuesto:

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

Se da un enlace y un botón. Al hacer clic en el botón, agregue al final del texto del enlace el contenido de su atributo href entre paréntesis. Haga que esta adición ocurra solo en el primer clic.

Se da un botón, cuyo valor es el número 1. Haga que al hacer clic en este botón su valor aumente en uno cada vez. Después de que el valor del botón alcance 10 - desvincule el manejador del evento para que el botón ya no reaccione al clic.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar