jQuery animieren-Schleife
Ich habe ein problem mit dem animieren Schleife. Es ist ein Objekt, das ich mich bewegen will, in besonderer Weise-und das in Schleife. Gibt es irgendwelche native Optionen, um es zu machen? Ich habe diese:
$(function () {
function runIt() {
$('#div').show("slow");
$('#div').animate({"marginLeft":"300px"},8000);
$('#div').animate({"marginLeft":"0px"},8000);
$('#div').hide("slow", runIt);
}
runIt();
});
Aber es scheint nicht so hübsch.
Sieht ziemlich gut zu mir. kingjiv Antwort mit der Einrückung macht es noch besser Aussehen.
kingjiv die Lösung sieht ein wahrscheinlicher Kandidat, das einzige, was ich hinzufügen würde, ist die Berücksichtigung der "onComplete" - Funktion darf innerhalb der animate-Funktion. Blick auf jQuery Api-Dokumentation für mehr info!
Ich habe einen link in meine Antwort auf eine alte Geige von mir wo ich ein kleines plugin und custom-queues. Hoffe, es hilft! 🙂
kingjiv die Lösung sieht ein wahrscheinlicher Kandidat, das einzige, was ich hinzufügen würde, ist die Berücksichtigung der "onComplete" - Funktion darf innerhalb der animate-Funktion. Blick auf jQuery Api-Dokumentation für mehr info!
Ich habe einen link in meine Antwort auf eine alte Geige von mir wo ich ein kleines plugin und custom-queues. Hoffe, es hilft! 🙂
InformationsquelleAutor Anton | 2011-06-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das ist, wie ich es tun würde. Der einzige Vorschlag, den ich machen würde, ist die Verwendung von Verkettung für schöner code und so das jquery-Objekt nicht jedes mal erstellt.
Craptastic! Wir hatten die gleiche Idee 😉
Es ist kein hack, es ist meiner Meinung nach der beste Weg, es zu tun. Wenn die animation abgeschlossen ist, starten Sie es erneut. Die einzige andere Möglichkeit die ich mir denken kann ist, setTimeout oder setInterval-Funktion, aber das ist viel hässlicher. Sie müssten, um herauszufinden, wie lange die animation ausgeführt wird und setzen Sie das timeout auf, dass... hässlich.
danke, das möchte ich wissen. ich dachte, kann jquery hat etwas besonderes for-Schleife animieren, aber diese Variante funktioniert für mich gut.
Nein ist es nicht. Es ist nicht wahr Rekursion. Der Aufruf
runIt
abgeschlossen. Der nächste AufrufrunIt
wird als callback zuhide
und zu dieser Zeit die erstenrunIt
fertig ist und aus dem Stapel.InformationsquelleAutor James Montagne
Das ist der richtige Weg, um queue-Animationen. Jedoch gibt es einige Dinge, die gemacht werden können, um Ihren code, um es ein bisschen flotter und schöner:
arguments.callee
als callbackHier ist ein Beispiel, in denen die oben genannten änderungen:
Kann man es auch in einem weiter fortgeschrittenen Weg durch die Erstellung einer eigenen plugin mit benutzerdefinierten Warteschlangen. Ich erstellte eine kleine Geige eine Weile zurück, als ich herumalbern mit animation Warteschlangen.
Mehr über sofort aufgerufene Funktion Ausdruck kann gelesen werden auf Ben "Cowboy" Alman ' s blog.
InformationsquelleAutor mekwall