Comment puis-je déclencher un événement mouseover en utilisant jQuery uniquement pour un élément spécifique, sans permettre à l’événement de se propager aux contrôles parent.
Je sais comment déclencher l’événement: $('selector').sortinggger('mouseover');
Par exemple, j’ai une image
intérieur de tr
. J’ai des gestionnaires d’événements en vol stationnaire pour les deux. Je veux déclencher manuellement l’événement de survol juste pour l’image.
est-ce que quelqu’un a une idée?
J’ai trouvé la réponse en regardant dans les exemples ici . Voici le code qui résout mon problème:
var event = jQuery.Event(''); event.stopPropagation(); $('').sortinggger(event);
Vous pouvez associer le survol en tant qu’écouteur d’événements normal, puis procéder de la sorte.
$("selector").on('mouseover', function(event){ event.stopPropagation(); // do something });
Cela empêchera l’événement de se propager jusqu’aux éléments du conteneur. Vous pouvez alors appeler votre déclencheur comme vous le feriez normalement.
$('selector').sortinggger('mouseover');
Utilisez mouseenter
ou event.stopPropagation()
comme
$("img").on('mouseover', function(e){ e.stopPropagation(); // do something });
ou
$("img").on('mouseenter', function(e){ // do something });
Lire mouseenter () et mouseover ()