posso usare questo codice per rimuovere evento click,come svincolare tutti gli eventi utilizzando jQuery
$('p').unbind('click')
ma, ha qualche metodo per rimuovere tutti gli eventi?
ha un metodo denominato unbindAll
in jquery?
grazie
posso usare questo codice per rimuovere evento click,come svincolare tutti gli eventi utilizzando jQuery
$('p').unbind('click')
ma, ha qualche metodo per rimuovere tutti gli eventi?
ha un metodo denominato unbindAll
in jquery?
grazie
Al jQuery 1.7, off()
e on()
sono i metodi preferiti per legare e gestori di eventi unbind.
Quindi, per rimuovere tutti i gestori da un elemento, utilizzare questo:
$('p').off();
o per i gestori specifici:
$('p').off('click hover');
E per aggiungere o gestori di eventi bind, è possibile utilizzare
$('p').on('click hover', function(e){
console.log('click or hover!');
});
@jammypeach è giusto su & di essere i metodi accettati da utilizzare. Unbind a volte finisce per creare comportamenti strani (ad esempio, non effettivamente gli eventi non vincolanti).
Per separare tutti gli elementi all'interno del corpo, trovare tutti e per ciascuno spegnere il gestore di clic (quello che era il vecchio unbind):
$("body").find("*").each(function() {
$(this).off("click");
});
vedere anche come salvare gli eventi che si abbia disattivato in this stack overflow question.
Se "p" ha alcuni elementi figli, questa affermazione non accetterà nemmeno gli ascoltatori su quelli? – Vrishank