Maison >interface Web >js tutoriel >Comment empêcher les gestionnaires d'événements parents de s'exécuter avec des clics sur les éléments enfants dans jQuery ?
Empêcher l'exécution des gestionnaires d'événements parents
Dans la structure HTML donnée, cliquer sur n'importe quel élément div déclenche le gestionnaire de clic de son div parent, conduisant à un comportement involontaire. Pour éviter cela, nous pouvons désactiver la propagation des événements de clic à l'aide de jQuery.
<div>
function func() { if ($(childId).hasClass("visible")){ $(childId).removeClass("visible"); $(childId).addClass("invisible"); }
Pour désactiver la propagation des événements de clic, ajoutez un gestionnaire d'événements aux éléments enfants qui appelle la méthode stopPropagation() :
function handler(event) { event.stopPropagation(); // Custom code to execute for the child's click event } $('#a').add('#b').click(handler);
En empêchant la propagation des événements, les clics sur les éléments enfants (« #b ») ne déclencheront plus le gestionnaire de clics de l'élément parent (« #a »). De même, les clics sur les éléments descendants (« #c ») ne se propageront pas aux deux éléments parents (« #b » et « #a »).
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!