Ich habe eine Schnittstelle, die den jQuery-slideUp-Effekt und den slideDown-Effekt nutzt, um Elemente auf tri-state-Weise zu erweitern.Alle jQuery slideUp- und slideDown-Animationen in der Warteschlange abbrechen
onmouseover: function() {
this.find('.details', this).slideDown();
},
onmouseout: function() {
this.find('.details', this).slideUp();
}
Wenn jedoch der Benutzer schnell die Maus über diese Schnittstellenelemente bewegt die Animationen nicht mithalten kann und die Einzelteile werden Schiebetüren oben und unten, lange nachdem die Maus, um den Schnittstellenbereich verlassen hat.
Gibt es eine Möglichkeit, alle in der Warteschlange befindlichen Folienanimationen abzubrechen, wenn die Maus das Container-div des Objekts verlässt?
Stellen Sie außerdem sicher, dass Sie jQuery 1.7.2 oder höher verwenden, da zuvor ein Fehler bei der Verwendung von slideUp() und slideDown() mit stop() aufgetreten ist. Wenn Sie schnell ein- und ausgeschaltet wurden, Ihr Element würde seltsame Höhenprobleme erleiden. – jackocnr
Ich beobachte diese seltsamen Probleme sogar mit jQuery 1.7.2 ... sind Sie sicher über die Versionsnummer? –
Ich bekomme die gleichen Probleme in 1.9. Der Schlüssel ist, '.stop()' aus 'slideDown()' zu entfernen. Wenn es dort ist, springt "jQuery" manchmal direkt auf die Zielhöhe und stoppt die Animation. – jclancy