je peux utiliser ce code pour supprimer événement click,comment dissociées événement à l'aide jquery
$('p').unbind('click')
mais, a une méthode pour supprimer tous les cas?
a une méthode nommée unbindAll
dans jquery?
grâce
je peux utiliser ce code pour supprimer événement click,comment dissociées événement à l'aide jquery
$('p').unbind('click')
mais, a une méthode pour supprimer tous les cas?
a une méthode nommée unbindAll
dans jquery?
grâce
Comme de jQuery 1.7, off()
et on()
sont les procédés préférés pour lier et gestionnaires d'événements unbind.
Donc, pour enlever tous les gestionnaires d'un élément, utilisez ceci:
$('p').off();
ou pour les gestionnaires spécifiques:
$('p').off('click hover');
Et d'ajouter ou de gestionnaires d'événements se lient, vous pouvez utiliser
$('p').on('click hover', function(e){
console.log('click or hover!');
});
@jammypeach a raison sur & étant les méthodes acceptées à utiliser. Unbind finit parfois par créer des comportements étranges (par exemple, ne pas correctement déconnecter les événements correctement).
Pour UNBIND tous les éléments dans le corps, les trouver et pour chacun désactiver le gestionnaire de clic (ce qui était l'ancien unbind):
$("body").find("*").each(function() {
$(this).off("click");
});
Voir aussi comment enregistrer les événements que vous avez désactivé dans this stack overflow question.
Si 'p' contient des éléments enfants, cette instruction désolidarise-t-elle ceux qui les écoutent? – Vrishank