Maison >interface Web >tutoriel CSS >Comment puis-je empêcher les événements « onmouseout » prématurés sur des divisions en position absolue avec des éléments enfants ?
Problème :
Lors du survol d'un élément enfant dans un div en position absolue, l'événement onmouseout pour le div se déclenche prématurément. Cela se produit en raison du bouillonnement d'événements, où les événements des éléments enfants se propagent à leurs éléments parents.
Solution : sans jQuery
Pour empêcher l'événement onmouseout de se déclencher lors du survol des éléments enfants , utilisez plutôt l'événement onmouseleave. Voici un exemple :
<div class="outer" onmouseleave="yourFunction()"> <div class="inner"> </div> </div>
Solution : Avec jQuery
jQuery fournit l'événement mouseleave(), qui accomplit la même fonctionnalité :
$(".outer").mouseleave(function(){ //your code here });
Comment ça marche :
L'événement onmouseleave ne déclenche que lorsque la souris quitte l'élément spécifié. En utilisant cet événement sur le div parent, cela garantit que l'événement mouseout ne se déclenchera que lorsque la souris quittera complètement le div, même si elle survole des éléments enfants.
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!