In diesem Artikel erfahren Sie mehr über eine zusammengesetzte Bewegung, die mit nativem JS implementiert wurde. Die sogenannte zusammengesetzte Bewegung bedeutet, dass sich verschiedene Attribute im gleichen Intervall ändern. Der Effekt ist wie folgt: Der Implementierungscode lautet wie folgt. Sie können ihn gerne kopieren, einfügen und kommentieren. <!DOCTYPE html> <html> <Kopf> <meta http-equiv="Inhaltstyp" content="text/html; charset=utf-8" /> <title>Natives JS realisiert zusammengesetzte Bewegungen verschiedener Bewegungen</title> <Stil> #div1 { Breite: 100px; Höhe: 100px; Hintergrund: rot; Deckkraft: 0,3; } </Stil> <Skript> Funktion getStyle(Objekt, Attribut) { wenn (obj.aktuellerStil) { returniere obj.currentStyle[attr]; } anders { gibt getComputedStyle zurück (Objekt, false) [attr]; } } Funktion startMove(obj, json, fn) { Intervall löschen(Objekt.Timer); obj.timer = setzeIntervall(Funktion () { //Schalter einstellen, um zu verhindern, dass sich andere Werte nicht mehr ändern, nachdem ein bestimmter Wert erreicht wurde var bStop = true; für (var attr in json) { var iCur = 0; wenn (attr == 'Deckkraft') { iCur = parseInt(parseFloat(getStyle(obj, attr)) * 100); } anders { iCur = parseInt(getStyle(obj, attr)); }; var iSpeed = (json[attr] – iCur)/8; iSpeed = iSpeed > 0 ? Math.ceil(iSpeed) : Math.floor(iSpeed); //Wenn ein bestimmter Wert nicht erreicht wurde, ist bStop false wenn (iCur != json[attr]) { bStop = falsch; }; wenn (attr == 'Deckkraft') { obj.style.filter = 'Alpha(Deckkraft:' + (iCur + iSpeed) + ')'; obj.style.opacity = (iCur + iSpeed) / 100; } anders { obj.style[attr] = iCur + iSpeed + 'px'; } } //Wenn dies in der letzten Schleifenrunde zutrifft, wird der Timer gelöscht if (bStop) { Intervall löschen(Objekt.Timer); wenn (fn) { fn(); } } }, 30) } </Skript> <Skript> fenster.onload = Funktion () { var oBtn = document.getElementById('btn1'); var oDiv = document.getElementById('div1'); oBtn.onclick = Funktion () { startMove(oDiv, { Breite: 400, Höhe: 200, Deckkraft: 100 }); }; }; </Skript> </Kopf> <body style="Hintergrund:#0F0;"> <input id="btn1" type="button" value="Übung starten" /> <div id="div1"></div> </body> </html> Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Detaillierte Schritte zur Installation von MySQL 5.7 über YUM auf CentOS7
>>: Zusammenfassung der Diskussion zur Gültigkeitsdauer von Nginx-Cookies
In diesem Artikelbeispiel wird der spezifische Co...
1. at ist so konfiguriert, dass nach 5 Stunden „D...
Wenn Sie wissen möchten, wie Sie diese Tabelle mi...
Dieser Artikel ist MySQL-Datenbank Frage 1 Import...
Hintergrund Wir verwenden Chrome Dev Tools häufig...
1. Die Organisationsstruktur des Hypertext-Dokumen...
Inhaltsverzeichnis Controllertyp von k8s Beziehun...
1. Grundlegende Einführung in die Linux-Gruppe Un...
1. Beschreibung Wenn wir in MySQL die Gesamtzahl ...
Inhaltsverzeichnis Vorwort 1. NJS-Modul installie...
1. Befehlseinführung Mit dem Befehl seq (Sequence...
„Replace“ und „Replace into“ von MySQL sind beide...
Ich habe kürzlich bei der Entwicklung eines Proje...
DOMContentLoaded-Ereignis Es wird buchstäblich au...
prune Um diesen Befehl verwenden zu können, müsse...