jQuery multiples événement click
Je suis obligé d'utiliser un script chargé à partir d'un serveur externe.
Ce script ajoute essentiellement un élément <div class="myClass">
et la lier à un click
méthode.
La chose est, dans le click
de la fonction associée à l'élément, ils ont un return false
déclaration à la fin.
J'ai aussi mon propre script et que j'essaye d'ajouter un click
méthode pour le même élément à l'aide de $(document).on('click', '.myClass', function() { ... })
Mon problème est que l'événement est déclenché avant et la return false
dans leur fonction ne pas déclencher mon propre click
méthode.
J'ai essayé de chargement de mon script avant de le leur, mais qui n'a pas de résoudre le problème.
J'ai lu à propos de déliaison et puis de reliaison, mais je ne suis pas sûr que c'est une bonne option, car leur code peut changer à tout moment.
Autre chose que je pourrais essayer?
event.preventDefault()
pour votre script.Je ne suis pas sûr de comprendre. Où pourrais-je passer cet événement?
pourriez-vous essayer de l'événement de l'espace de noms
$(document).on('click.namespace', '.myClass', function() { ... })?
OriginalL'auteur VVV | 2013-09-06
Vous devez vous connecter pour publier un commentaire.
Le problème est que l'événement délégation dépend de la remontée d'événements jusqu'à l'élément que vous liez le gestionnaire. Lors de leur gestionnaire retourne false, ce qui empêche de bulles.
Vous aurez pour lier le gestionnaire directement aux éléments une fois qu'ils sont ajoutés:
OriginalL'auteur Barmar
Vous avez besoin pour faire de votre fonction de gestionnaire de retour faux.. il empêche la manifestation de propagation.
Dans votre balise html que vous avez à écrire quelque chose comme:
Ou si vous utilisez jQuery:
OriginalL'auteur andrea.rinaldi
dans votre onLoad pourquoi ne pas ajouter une nouvelle classe myClass div et ensuite mettre en place un écouteur d'événement pour la nouvelle classe.
OriginalL'auteur Scary Wombat
J'ai eu le même problème récemment. Comment je fixe il est, j'ai ajouté une autre classe sur cet élément:
et que bindings cliquez sur les événements de la classe comme ceci:
Cela a fonctionné pour moi, car il a remplacé le
myClass
de classe avec lemyNewClass
cliquez sur l'événement.OriginalL'auteur Solomon Closson
Essayez celui-ci:
OriginalL'auteur Habibillah