Foros del Web » Programando para Internet » Javascript »

Ayuda:addEventListener y removeEventListener()

Estas en el tema de Ayuda:addEventListener y removeEventListener() en el foro de Javascript en Foros del Web. Hola, estoy haciendo un script en el que tengo que utilizar las funciones addEventListener y removeEventListener. Tengo algo similar a esto: Código: ... elemento.addEventListener("click", mouseClick, ...
  #1 (permalink)  
Antiguo 17/01/2011, 06:18
Avatar de AubeRoseau  
Fecha de Ingreso: diciembre-2010
Ubicación: Sevilla
Mensajes: 90
Antigüedad: 13 años, 4 meses
Puntos: 2
Ayuda:addEventListener y removeEventListener()

Hola, estoy haciendo un script en el que tengo que utilizar las funciones addEventListener y removeEventListener. Tengo algo similar a esto:

Código:
 ...
elemento.addEventListener("click", mouseClick, false);
...
function mouseClick(e){
funcion a ejecutar...
}
...
elemento.removeEventListener("click", mouseClick, false);
...
De este modo me funciona perfectamente, pero me interesa pasar algunos parámetros a la función mouseClick y es aquí donde está el problema.
Si pongo por ejemplo:

Código:
elemento.addEventListener("click", mouseClick(arg1, arg2), false);
No consigo que me funcione. Vamos lo que pasa es que la función removeEventListener no hace nada y no se deja de escuchar el evento. ¿Sabeis si hay alguna forma de poder hacerlo?
  #2 (permalink)  
Antiguo 17/01/2011, 06:46
Avatar de AubeRoseau  
Fecha de Ingreso: diciembre-2010
Ubicación: Sevilla
Mensajes: 90
Antigüedad: 13 años, 4 meses
Puntos: 2
Respuesta: Ayuda:addEventListener y removeEventListener()

Yo misma me respondo. Acabo de ver que se puede hacer usando una variable. Sería algo así como lo que se muestra en el siguiente ejemplo:

Código:
var div = document.getElementById('div'); 
var listener = function (event) {   
/* do something here */ 
}; 
div.addEventListener('click', listener, false);
div.removeEventListener('click', listener, false);

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:59.