In den eigenen Worten des Skills
Offizielle GSAP-Empfehlungen, um Animationen bei flüssigen 60fps zu halten, indem Sie günstige Eigenschaften wählen und Layout-Arbeit vermeiden. Sie werden angewiesen, transform-Schlüssel (x, y, scaleX, scaleY, rotation, rotationX, rotationY, skewX, skewY) und opacity zu animieren statt width, height, top, left, margin oder padding, will-change nur in CSS bei Elementen zu setzen, die tatsächlich animiert werden, und alle DOM-Lesevorgänge vor den Schreibvorgängen durchzuführen, damit das Layout nicht durcheinandergerät.
Die Empfehlungen zum Batching umfassen Stagger anstelle von manuell verzögerten Tweens, Virtualisierung für lange Listen, gsap.quickTo() für Maus-Follower, Pin- und Scrub-Feinabstimmung mit entprelltem ScrollTrigger.refresh() sowie das Beenden nicht sichtbarer Tweens. Es richtet sich an Designer und Entwickler, die bestehende GSAP-Animationen optimieren, nicht an solche, die sie neu erstellen.
Was er erzeugt
- Eine will-change-Deklaration, die dem CSS des animierten Elements hinzugefügt werden soll.
- Ein gsap.quickTo()-Setup für x und y, gesteuert durch einen mousemove-Listener auf einem Container.
So funktioniert es
- 01Compositor-freundliche Eigenschaften animieren
Beschränken Sie Animationen auf transform-Schlüssel und opacity, da diese die Arbeit auf dem Compositor halten, statt Layout und Paint auszulösen.
- 02GSAP die Schreibvorgänge bündeln lassen
GSAP bündelt Updates bereits intern, daher liegt das Risiko in Ihrem eigenen DOM-Code, der Lese- und Schreibvorgänge dazwischen verschachtelt.
- 03Ein Tween für häufig geänderte Werte wiederverwenden
Für Eigenschaften, die bei jeder Zeigerbewegung aktualisiert werden, hält gsap.quickTo() ein einzelnes Tween am Leben, statt bei jedem Update ein neues zu erzeugen.
- 04Scroll-gesteuerte Arbeit eindämmen
Ein kleiner scrub-Wert wie scrub: 1 kann die während des Scrollens anfallende Arbeit reduzieren, aber die Datei rät dazu, diese Einstellung auf Low-End-Geräten zu testen.
- 05Nicht sichtbare Animationen stoppen
Pausieren oder beenden Sie Animationen, die außerhalb des Sichtbereichs oder inaktiv sind, zum Beispiel wenn der Nutzer den Bereich verlässt.