Ahora vamos a aprender a hacer el paso contrario, es decir, eliminar un evento previamente asignado a un elemento o varios
elementos de la página. El procedimiento es bastante sencillo.
Si invocamos a unbind() sin ningún parámetro, eliminamos todos los manejadores de eventos, de cualquier tipo de evento,
de los objetos jQuery.
$("p").unbind();
Así hemos eliminado todos los eventos asociados con los párrafos de la página. Pero quizás una situación más habitual es
que deseemos eliminar sólo los eventos de un tipo y para ello simplemente tenemos que indicar como parámetro ese tipo
concreto de evento deseado.
$("p").unbind("click");
Esta sentencia provocará se descarten que todos los manejadores de eventos asociados al clic sobre los párrafos. Como se
puede entender, sobre esos elementos no ocurrirá nada en el momento en que hagamos clic.
Además, en el supuesto que
otros scripts Javascript hayan definido algún manejador de evento clic sobre alguno de los elementos, unbind() también
eliminará esos posibles eventos.
Para no eliminar todos los manejadores de eventos de un tipo determinado podemos especificar la función que deseamos
descartar en la lista de parámetros de la llamada a unbind(). Esto funcionaría en un esquema de código como el siguiente.
var funcionManejador = function(e) {
// cualquier código
}
$("p").bind('click', funcionManejador);
$("p").unbind('click', funcionManejador);
No hay comentarios:
Publicar un comentario