Eine kurze Diskussion darüber, ob CSS-Animationen durch JS blockiert werden

Eine kurze Diskussion darüber, ob CSS-Animationen durch JS blockiert werden

Der Animationsteil von CSS wird von JS blockiert, die Animation der Transformation wird davon jedoch nicht beeinflusst.

Hier ist ein Leistungsdiagramm der bewegten Animation am linken Rand mit aktivierter JS-Blockierungsanimation.

<Stil>
.walkabout-old-school {
  Animation: 3 s Folienrand linear unendlich;
}
 
@keyframes Folienrand {
  von {margin-left: 0;}
  50 % {margin-left: 100 %;}
  bis {margin-left: 0;}
}
</Stil>
<Skript>
Funktion töten() {
  var start = +neues Datum;
  während (+neues Datum - Start < 2000){}
}
</Skript> 

In der obigen Abbildung ist deutlich zu erkennen, dass die Animation nach dem Ausführen der Kill-Methode 2 Sekunden lang stagniert, bevor sie fortgesetzt wird.

Aus der obigen Abbildung können wir ersehen, dass der Rendering-Prozess innerhalb von 2 Sekunden nach dem Aktivieren von js wartet, bis die Kill-Funktion ausgeführt wird, bevor er ausgeführt wird. In der folgenden Abbildung können wir sehen, dass Änderungen am Rand dazu führen, dass das DOM neu angelegt wird, und das Layout wird erst gestartet, wenn die Kill-Funktion ausgeführt wird. wird führen zu

Schauen Sie sich dann die Elemente an, die Transform als Animation verwenden

.walkabout-neue-schule {
  Animation: 3 s Gleittransformation, linear, unendlich;
}
@keyframes Folie-Transformation {
  von {transform: translatex(0);}
  50 % {transform: translatex(300px);}
  zu {transform: translatex(0);}
}

Die folgende Abbildung ist ein laufendes Vergleichsdiagramm (blau ist der Rand, grün ist die Transformation)

Aus der obigen Abbildung können wir erkennen, dass die Verwendung von Transform durch die Kill-Methode überhaupt nicht beeinflusst wird. Werfen wir einen Blick auf das Debugging-Diagramm

Hier ist zu sehen, dass der Rand häufig einen Seitenumbruch auslöst, während dies bei Transform nicht der Fall ist und js den Seitenumbruch blockiert. Daher bleibt die Randanimation hängen.

Daher können beim Einsatz von Animationen im täglichen Leben die beste Seitenleistung und die besten Effekte durch häufigere Transformationen erzielt werden.

Dies ist das Ende dieses Artikels darüber, ob CSS-Animationen durch JS blockiert werden. Weitere relevante Inhalte zum Blockieren von CSS-Animationen durch JS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

<<:  Detaillierte Schritte zur Installation von Nginx auf dem Apple M1-Chip und zum Bereitstellen eines Vue-Projekts

>>:  Praktischer Bericht zur Lösung des MySQL Deep Paging-Problems

Artikel empfehlen

Hyperlink-Tag für HTML-Webseiten

Lernprogramm zum Hyperlink-Tag einer HTML-Webseit...

Detaillierte Erklärung des JavaScript ES6-Moduls

Inhaltsverzeichnis 0. Was ist ein Modul 1.Modul l...

TinyEditor ist ein einfacher und benutzerfreundlicher HTML-WYSIWYG-Editor

Vor einigen Tagen habe ich Ihnen einen inländisch...

So verwenden Sie Provide zur Implementierung der Statusverwaltung in Vue3

Inhaltsverzeichnis Vorwort So implementieren Sie ...

Embed-Codes für mehrere ältere Player

Die Player, die wir auf Webseiten sehen, sind nic...

Tipps zum Anzeigen von Text in Linux (super praktisch!)

Vorwort Bei der täglichen Entwicklung müssen wir ...

CentOS7-Konfiguration Alibaba Cloud Yum-Quellmethodencode

Öffnen Sie den Centos Yum-Ordner Geben Sie den Be...

Erkennung und Lösung von Vue.$set-Fehlerfallen

Ich habe zufällig festgestellt, dass Vue.$set im ...

MySQL 5.6.24 (binär) automatisches Installationsskript unter Linux

In diesem Artikel wird der Skriptcode für die aut...

Implementierung eines Web-Rechners mit nativem JavaScript

In diesem Artikel wird der spezifische JavaScript...

js realisiert horizontale und vertikale Slider

Als ich kürzlich an einem Übungsprojekt arbeitete...

Problemlösungsvorgänge für Alpine Docker-Bildschriftarten

1. Führen Sie Schriftarten aus, öffnen Sie den Sc...

So löschen Sie die Hintergrundfarbe des A-Tags, wenn in H5 darauf geklickt wird

1. Die blaue Farbe des Tags wird aufgehoben, wenn...