Was sind die Unterschiede zwischen jQuery .mouseover()
und .hover()
Funktionen? Wenn sie völlig gleich sind, warum verwendet jQuery beide?
jquery
mouseevent
Bhojendra Rauniyar
quelle
quelle
el
Element zurchild
Konsole und überprüfen Sie sieAntworten:
Aus der offiziellen jQuery-Dokumentation
.mouseover()
Binden Sie einen Ereignishandler an das JavaScript-Ereignis "mouseover" oder lösen Sie dieses Ereignis für ein Element aus.
.hover()
Binden Sie einen oder zwei Handler an die übereinstimmenden Elemente, die ausgeführt werden, wenn der Mauszeiger die Elemente betritt und verlässt .Anrufen
$(selector).hover(handlerIn, handlerOut)
ist eine Abkürzung für:$(selector).mouseenter(handlerIn).mouseleave(handlerOut);
.mouseenter()
Binden Sie einen Ereignishandler, der ausgelöst werden soll, wenn die Maus ein Element betritt, oder lösen Sie diesen Handler für ein Element aus.
mouseover
wird ausgelöst, wenn sich der Zeiger ebenfalls in das untergeordnete Element bewegt, während ermouseenter
nur ausgelöst wird, wenn sich der Zeiger in das gebundene Element bewegt.Was das bedeutet
Aus diesem Grunde ,
.mouseover()
ist nicht das gleiche wie.hover()
, aus dem gleichen Grund.mouseover()
ist nicht wie das gleiche.mouseenter()
.quelle
.hover()
Die Funktion akzeptiert zwei Funktionsargumente, eines fürmouseenter
Ereignis und eines fürmouseleave
Ereignis.quelle
Sie können es unter http://api.jquery.com/mouseover/ auf der jQuery-Dokumentseite ausprobieren . Es ist eine nette kleine, interaktive Demo, die es sehr deutlich macht und Sie selbst sehen können.
Kurz gesagt, Sie werden feststellen, dass ein Mouse-Over-Ereignis für ein Element auftritt, wenn Sie sich darüber befinden - entweder von seinem untergeordneten oder übergeordneten Element. Ein Mauseingabeereignis tritt jedoch nur auf, wenn sich die Maus vom übergeordneten Element zum Element bewegt.
quelle
Aus den offiziellen Dokumenten: ( http://api.jquery.com/hover/ )
quelle
Wie Sie unter http://api.jquery.com/mouseenter/ lesen können
quelle