Heim > Web-Frontend > CSS-Tutorial > Wie kann ich vorzeitige „onmouseout'-Ereignisse bei absolut positionierten Divs mit untergeordneten Elementen verhindern?

Wie kann ich vorzeitige „onmouseout'-Ereignisse bei absolut positionierten Divs mit untergeordneten Elementen verhindern?

Barbara Streisand
Freigeben: 2024-12-02 16:46:12
Original
1085 Leute haben es durchsucht

How Can I Prevent Premature `onmouseout` Events on Absolutely Positioned Divs with Child Elements?

Mouseout-Ereignis verhindern, wenn der Mauszeiger über ein untergeordnetes Element von Absolute Div bewegt wird

Problem:

Wenn Sie den Mauszeiger über ein untergeordnetes Element innerhalb eines bewegen Wenn ein Div absolut positioniert ist, wird das Onmouseout-Ereignis für das Div vorzeitig ausgelöst. Dies geschieht aufgrund von Event-Bubbling, bei dem untergeordnete Elementereignisse an ihre übergeordneten Elemente weitergegeben werden.

Lösung: Ohne jQuery

Um zu verhindern, dass das onmouseout-Ereignis ausgelöst wird, wenn untergeordnete Elemente schweben verwenden Sie stattdessen das onmouseleave-Ereignis. Hier ist ein Beispiel:

<div class="outer" onmouseleave="yourFunction()">
    <div class="inner">
    </div>
</div>
Nach dem Login kopieren

Lösung: Mit jQuery

jQuery stellt das Ereignis „mouseleave()“ bereit, das die gleiche Funktionalität erreicht:

$(".outer").mouseleave(function(){
    //your code here
});
Nach dem Login kopieren

So funktioniert es:

Nur ​​die Onmouseleave-Veranstaltung Wird ausgelöst, wenn die Maus das angegebene Element verlässt. Durch die Verwendung dieses Ereignisses für das übergeordnete Div wird sichergestellt, dass das Mouseout-Ereignis nur dann ausgelöst wird, wenn die Maus das Div vollständig verlässt, selbst wenn sie sich über untergeordneten Elementen befindet.

Das obige ist der detaillierte Inhalt vonWie kann ich vorzeitige „onmouseout'-Ereignisse bei absolut positionierten Divs mit untergeordneten Elementen verhindern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage