Sie suchen nach .stop()
. Es ist Implementierung ändert sich mit dem gewünschten Verhalten aber die Dokumentation sollte das für Sie klären: http://api.jquery.com/stop
Hier eine Demo: http://jsfiddle.net/jmPCt/19/
Wegen, wie .stop()
funktioniert, wenn Sie es mit .fadeIn()
oder .fadeOut()
Sie können chop- deine Animationen bis zu dem Punkt, an dem sie nicht mehr funktionieren. Die besten fix ich gefunden habe, ist, immer mit .fadeTo()
zu absoluten Werten zu animieren: http://api.jquery.com/fadeTo
Hier den Code ist ich zu Ihrer JSFiddle hinzugefügt, dies überschreibt den Standard .fadeIn()
und .fadeOut()
jQuery-Funktionen mit denen, die .fadeTo()
und .stop()
verwenden:
$.fn.fadeOut = function (duration, callback) {
$(this).stop().fadeTo(duration, 0, function() {
$(this).css('display', 'none');
if (typeof callback == 'function') {
callback();
}
});
};
$.fn.fadeIn = function (duration, callback) {
$(this).css('display', 'block').stop().fadeTo(duration, 1, function() {
if (typeof callback == 'function') {
callback();
}
});
};
aktualisieren
Wenn Sie die position
Eigenschaft für die „slide“ Elemente gesetzt, dann können sie auf der jeweils anderen animieren, die die Sprunghaftigkeit entfernen, die Ihr Code exhibi ts:
HTML -
<div id="controls">
<div id="countah"></div>
<a href="#" id=prev>prev</a> |
<a href="#" id=next>next</a>
</div>
CSS -
.js .staceyPort {
display: none;
position : absolute;
top : 0;
left : 0;
}
#controls{
position : fixed;
bottom : 0;
left : 0;
z-index : 1000;
background : gold;
}
Hier ist eine Demo: http://jsfiddle.net/jmPCt/21/
Ja, ich habe die .stop versucht() -Methode: http: //jsfiddle.net/jmPCt/20/ aber vielleicht benutze ich nicht die richtigen params drauf ?? .stop ([clearQueue] [, jumpToEnd]) also .stop (wahr, wahr), ja? – jonathanbell
@ jonny.milano Sehen Sie das ** Update ** zu meiner Antwort. Versuchen Sie, die Objektträger absolut zu positionieren, damit sie übereinander animiert werden können, ohne den Rest der Seite zu stören: http://jsfiddle.net/jmPCt/21/ – Jasper
wow, das ist "absolut";) erstaunlich! vielen Dank. Ich kann sehen, warum Sie 26,2k Ruf haben! funktioniert jetzt viel besser und Ihr Trick zu verwenden. FadeTo() ist großartig! Interessanterweise, in Chrome, wenn Sie wirklich schnell klicken, kann der Code immer noch dieses Verhalten (Art von) zeigen: http://dl.dropbox.com/u/7573777/z_working-folder/Untitled.jpg sowieso, das ist VIEL besser. Vielen Dank! – jonathanbell