S'il vous plaît, aidez-moi, les éléments générés dynamiquement par jq doivent être liés à des événements de clic pour prendre effet, et la fonction qui s'exécute a également des événements de clic, puis la fonction est exécutée deux fois. Comment résoudre cette situation ?
Utilisez l'objet événement pour trouver la cible sur laquelle vous souhaitez vraiment cliquer
En fait, ce n'est rien de plus que l'événement lié deux fois ou l'événement bouillonnant
.1 Délier l'événement et le lier à nouveau
2, Annuler le bouillonnement
Supprimez d'abord la surveillance, puis surveillez
.off(handler).on(handler)
Est-ce que ça bouillonne ? e.stopPropagation()
off Délier d'abord, puis lier
La personne ci-dessus a été plus claire.
1. Problème trouvé
1.1 est lié deux fois, car l'élément généré dynamiquement est lié à un événement, mais dans cet événement, l'événement précédemment lié est à nouveau appelé
1.2 Elle est toujours causée par le bouillonnement d'événements (si vous n'êtes pas familier avec le bouillonnement, veuillez d'abord lire les informations pertinentes)
2. Les éléments générés dynamiquement ne doivent pas nécessairement utiliser des événements de liaison dynamique
Les gestionnaires d'événements utilisant la méthode délégué() fonctionnent sur les éléments actuels ou futurs (tels que les nouveaux éléments créés par des scripts).
Cliquez ici pour consulter les documents détaillés : http://www.w3school.com.cn/jq...
N'oubliez pas d'éteindre() après on()