animate()-Animationsmethode
• Parameter 1: Eine Sammlung von CSS-Eigenschaftsnamen und Eigenschaftswerten für die Endposition der Bewegung. ① Alle Attributwerte mit numerischen Werten können verschoben werden. <Stil> *{ Rand: 0; Polsterung: 0; } P{ Position: relativ; links: 0; Rand unten: 10px; Hintergrundfarbe: himmelblau; Breite: 50px; Höhe: 50px; } </Stil> <!-----------------------------------------> <Text> <p>1</p> <p>2</p> <p>3</p> <p>4</p> <p>5</p> <p>6</p> <p>7</p> <p>8</p> <script src="../jq/jquery-1.12.4.min.js"></script> <Skript> var $ps = $("p"); //Im tatsächlichen Betrieb ist es besser, die flüchtige Zeit in einer Variablen zu speichern. var during = 1000; //Alle Attributwerte mit numerischen Werten können verschoben werden $ps.click(function(){ $(this).animate({"width":500,"opacity":0.5},während,"swing") }) </Skript> </body> Animationswarteschlange
<Stil> div{ Breite: 100px; Höhe: 100px; Rand: 8px durchgezogen #ccc; Position: absolut; links: 0; oben: 0; Hintergrund: URL (../../imgs/1.jpg) keine Wiederholung Mitte Mitte; } .box2{ Randradius: 50 %; Überlauf: versteckt; } div Spanne { Position: absolut; links: 0; oben: 0; Breite: 100 %; Höhe: 100%; Hintergrundfarbe: rgba(221, 130, 130, 0,4); } </Stil> <!-------------css-Stil-------------------> <Text> <div Klasse="Box1"><span></span></div> <div Klasse="box2"><span></span></div> <script src="../jq/jquery-1.12.4.min.js"></script> <Skript> var $box1 = $(".box1"); var $box2 = $(".box2"); var während = 2000; //Vergleich der Animationswarteschlangen $box2.animate({"left": 400,"top":400},during) //Box1 und Box2 führen jeweils ihre eigenen Animationen aus //Mehrere Animationen für dasselbe Element in die Warteschlange stellen $box1.animate({"left": 400},during) //$box1.animate({"top": 400}, during) in die Warteschlange stellen // Der untere Teil der Animation ist ein Timer, der asynchron geladen wird // Nicht-Bewegungscode, ungefähr das gleiche Elementobjekt, wird nicht in die Warteschlange gestellt // $box1.css ("Höhe", 200) </Skript> </body>
//Andere Bewegungsmethoden werden, wenn sie auf dasselbe Element eingestellt sind, ebenfalls in die Warteschlange gestellt$box2.mouseenter(function(){ $(diese).children().slideUp(während) }) $box2.mouseleave(Funktion(){ $(diese).children().slideDown(während) }) //Die Maus bewegt sich schnell auf und ab, und dann gleitet der graue Bereich von Box2 weiter hinein und heraus, bis alle Zeiten ausgeführt wurden
//Mehrere Bewegungen desselben Elements können durch Kettenaufrufe vereinfacht werden //Sie müssen aber trotzdem in die Warteschlange gestellt werden $box1.children().fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500) delay()-Methode
//Verzögerung $box1.children().delay(3000).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500) stop()-Methode zum Stoppen der Animation
• Parameter 1: Legen Sie fest, ob die Warteschlange für nachfolgende Animationen gelöscht werden soll. Wenn der Wert „true“ ist, bedeutet dies, dass die Warteschlange gelöscht wird (die nachfolgenden Animationen werden ebenfalls gelöscht und nicht mehr ausgeführt). Wenn der Wert „false“ ist, bedeutet dies, dass die Warteschlange nicht gelöscht wird, sondern nur die aktuelle Animation gestoppt wird (die nachfolgenden Animationen werden sofort ausgeführt). <Stil> div { Breite: 100px; Höhe: 100px; Rand: 8px durchgezogen #ccc; Position: absolut; links: 0; oben: 40; Hintergrund: URL (../../imgs/1.jpg) keine Wiederholung Mitte Mitte; } div Spanne { Position: absolut; links: 0; oben: 0; Breite: 100 %; Höhe: 100%; Hintergrundfarbe: rgba(221, 130, 130, 0,4); } </Stil> </Kopf> <Text> <Eingabetyp="Schaltfläche" Wert="true true" ID="btn1"> <Eingabetyp="Schaltfläche" Wert="true false" id="btn2"> <Eingabetyp="Schaltfläche" Wert="false false" ID="btn3"> <Eingabetyp="Schaltfläche" Wert="falsch wahr" ID="btn4"><br> <div Klasse="Box1"><span></span></div> <script src="../jq/jquery-1.12.4.min.js"></script> <Skript> var $box1 = $(".box1"); var während = 2000; //Mehrere Animationen für dasselbe Element in die Warteschlange stellen $box1.animate({ "left": 400 }, during) $box1.animate({ "top": 400 }, während) $box1.animate({"links":0},während) $box1.animate({"top":40},während) // Animation stoppen // Schaltflächenklickereignis hinzufügen var $btn1 = $("#btn1") var $btn2 = $("#btn2") var $btn3 = $("#btn3") var $btn4 = $("#btn4") //true true Löscht die in die Warteschlange gestellten Animationen und beendet die aktuelle Animation sofort. Stoppt an der Endposition$btn1.click(function () { $box1.stop(wahr, wahr); }) //true false Animation löschen und an der aktuellen Stelle anhalten $btn2.click(function () { $box1.stop(wahr, falsch); }) //false false Lösche die folgenden Animationen nicht, halte bei der aktuellen // an und führe dann die nächste Animation aus $btn3.click(function () { $box1.stop(falsch, falsch); }) //false true Lösche die folgende Animation nicht, die aktuelle Bewegung wird sofort beendet$btn4.click(function () { $box1.stop(falsch, wahr); }) </Skript> </body>
Animationswarteschlange löschen Problem mit der Animationswarteschlange
Es ist notwendig, die in die Warteschlange gestellten Animationen zu löschen und Maßnahmen zum Schutz vor Belästigung durchzuführen.
Methode 1: Verwenden der stop()-Methode Fügen Sie vor jeder Bewegungsfunktion ein „stop(true)“ hinzu. Dies bedeutet, dass vor der Ausführung der Bewegung die zuvor in die Warteschlange gestellte Animation gelöscht wird und dann an der aktuellen Position angehalten wird. <Stil> div { Breite: 100px; Höhe: 100px; Rand: 8px durchgezogen #ccc; Position: absolut; links: 0; oben: 0; Hintergrund: URL (../../imgs/1.jpg) keine Wiederholung Mitte Mitte; } div Spanne { Position: absolut; links: 0; oben: 0; Breite: 100 %; Höhe: 100%; Hintergrundfarbe: rgba(221, 130, 130, 0,4); } </Stil> <Text> <Eingabetyp="Schaltfläche" Wert="true true" ID="btn1"> <Eingabetyp="Schaltfläche" Wert="true false" id="btn2"> <Eingabetyp="Schaltfläche" Wert="false false" ID="btn3"> <Eingabetyp="Schaltfläche" Wert="falsch wahr" ID="btn4"><br> <div Klasse="Box1"><span></span></div> <script src="../jq/jquery-1.12.4.min.js"></script> <Skript> var $box1 = $(".box1"); var während = 2000; // Animation löschen $box1.mouseenter(function(){ $(diese).children().stop(true).slideUp(während) }) $box1.mouseleave(Funktion(){ $(diese).children().stop(true).slideDown(während) }) </Skript> </body> Methode 2: Verwenden der Funktionsdrosselungsmethode Wenn sich das Element bewegt, kehren Sie direkt zurück und führen Sie den nachfolgenden Bewegungscode nicht aus. Jedes jQuery-Objekt kann eine is()-Methode aufrufen, die verwendet wird, um einen bestimmten Status des Elementobjekts anzuzeigen. Wenn der Parameter position is(":animated") ist, bedeutet animiert Bewegung und der Rückgabewert ist ein Boolescher Wert, true bedeutet Bewegung, false bedeutet keine Bewegung //Funktionsdrosselungsmethode $box1.mouseenter(function(){ wenn(ist(":animiert")){ //Wenn beurteilt wird, dass es sich bewegt, kehren Sie direkt zurück und führen Sie keine weiteren Animationsrückläufe mehr aus. } //Wenn keine Bewegung stattfindet, führen Sie die folgende neue Animation weiter aus: $(this).children().slideup(during); }) $box1.mouseenter(Funktion(){ wenn(ist(":animiert")){ //Wenn beurteilt wird, dass es sich bewegt, kehren Sie direkt zurück und führen Sie keine weiteren Animationsrückläufe mehr aus. } //Wenn keine Bewegung stattfindet, führen Sie die neue Animation dahinter weiter aus. //Manchmal wird es aus Sicherheitsgründen in Verbindung mit stop(true) verwendet. $(this).children().stop(true).slideup(during); })
Oben finden Sie eine ausführliche Erläuterung der Animationsmethode „animate“ von jQuery und der Lösung für das Problem der Animationswarteschlange. Weitere Informationen zur Animationsmethode „animate“ von jQuery finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Mehrere Möglichkeiten zum Berechnen des Alters anhand des Geburtstags in MySQL
>>: So ändern Sie das Terminal in Ubuntu 18 in eine schöne Eingabeaufforderung
Dieser Artikel beschreibt, wie man den https-Dien...
Inhaltsverzeichnis 1. Entpacken 2. Erstellen Sie ...
Inhaltsverzeichnis Zweck Experimentelle Umgebung ...
1. Einleitung table_cache ist ein sehr wichtiger ...
Laden Sie das ZIP-Installationspaket herunter: Do...
In diesem Artikelbeispiel wird der spezifische Co...
1. Fehler beim Verbinden mit Master 'x@xxxx:x...
Beim UI-Schnittprozess besteht die Seite häufig a...
Ich verfolge wochentags gerne die Nachrichten und ...
Die Verwendung von Vue + ElementUI Tree dient zu ...
1. Wie oben erwähnt Ich habe dieses Makro gesehen...
Im Allgemeinen bietet MySQL standardmäßig eine Vi...
Inhaltsverzeichnis Hintergrund Serverabhängigkeit...
● Ich hatte vor, einige Cloud-Daten zu kaufen, um...
Apache Log4j2 meldete eine Sicherheitslücke auf n...