Erstellen dynamischer CSS @-Keyframe-Animationen
Bei der Webentwicklung müssen Sie möglicherweise Animationen erstellen, die Elemente in bestimmten Winkeln drehen. Native JavaScript-Rotationstechniken können CPU-intensiv sein. CSS-Animationen stellen eine effiziente Alternative dar, erfordern jedoch eine dynamische Definition von Keyframes, um den Stopppunkt zu steuern.
Problem:
Stellen Sie sich das folgende Szenario vor: Sie müssen ein Div drehen zu einem bestimmten Winkel, der von einem Server empfangen wird. Eine native JS-Rotation ist aus Leistungsgründen unpraktisch. CSS-Animationen bieten eine Lösung, erfordern jedoch die dynamische Erstellung von Keyframes, die den Endwinkel der Animation bestimmen.
Lösung:
Stylesheet-Regeln dynamisch in das HTML-Head-Tag einfügen um frühere Stile zu überschreiben. Dies ermöglicht Flexibilität, ohne dass externe Bibliotheken erforderlich sind. Führen Sie die folgenden Schritte aus:
var style = document.createElement('style'); style.type = 'text/css';
var keyFrames = '\ @-webkit-keyframes spinIt {\ 100% {\ -webkit-transform: rotate(A_DYNAMIC_VALUE);\ }\ }\ @-moz-keyframes spinIt {\ 100% {\ -webkit-transform: rotate(A_DYNAMIC_VALUE);\ }\ }';
style.innerHTML = keyFrames.replace(/A_DYNAMIC_VALUE/g, "180deg"); document.getElementsByTagName('head')[0].appendChild(style);
Mit dieser Technik können Sie CSS-Keyframe-Animationen dynamisch erstellen und anwenden, die Elemente in einen beliebigen angegebenen Winkel drehen.
Das obige ist der detaillierte Inhalt vonWie kann ich den Endwinkel von CSS-Keyframe-Animationen dynamisch steuern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!