generieren @-webkit-keyframes CSS dynamisch mit JavaScript?
Kann ich produzieren
-webkit-animation-name:mymove;
dynamisch mit
object.style.animationName="mymove"
ist es jedoch möglich, etwas erzeugen, wie
@keyframes mymove
{
from {left:0px;}
to {left:200px;}
}
dynamisch mit JS?
- Möchten Sie in der Lage sein, verweisen die animation, nachdem Sie definiert ist (in einem anderen element), oder nur für die animation, um das aktuelle element und nennen es beendet?
- es jetzt arbeiten, sorry für die Verzögerung!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, ich nutze Jquery-Bibliothek und dann gilt wie so:
Sagen in dieser situation möchte ich der linken Seite den Wert an, der dynamisch von einem div mit Attribut class mit dem Wert = "push"
Betrachten Sie die Idee, wie man den Zugriff auf die styleSheet...
Es ist sicherlich zu kompliziert sein, um gut zu tun, so kurz, würden Sie beibehalten möchten, eine Verknüpfung und ändern Sie die Regel, die mit jedem Objekt oder etwas, um Unordnung zu vermeiden. Oder Sie könnten versuchen, führen Sie eine form von garbage collection mit Zeitstempel oder etwas, um herauszufinden, wenn die alten entfernt werden kann.
Vom einen schnellen Blick für die anderen links, die ich gefunden...
http://davidwalsh.name/add-rules-stylesheets
deleteRule
http://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/deleteRule
insertRule (addRule vor und ist daher zuverlässiger)
http://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet.insertRule
Hab ich auch erst jetzt bemerkte etwas anderes, das nützlich sein könnte...
http://developer.mozilla.org/en-US/docs/Web/API/CSSKeyframesRule
Eigentlich sieht es aus wie ein besserer cleaner Verständnis oder zumindest eine andere Art und Weise.
http://blog.joelambert.co.uk/2011/09/07/accessing-modifying-css3-animations-with-javascript/
Okay so, wenn ich verstehe Sie richtig jsfiddle sollte den trick tun.
Es verwendet einen vordefinierten Satz von übergangs-Eigenschaften, und ändert die Werte dynamisch über jquery.
Die syntax für die Definition dieser Animationen ist es wie folgt...
Indem wir dies tun, können Sie erreichen fast alles können Sie mit @keyframes (nicht ganz alles, aber sicherlich eine ganze Menge), es passiert einfach zu sein gebaut in den Stil des Elementes. Von hier aus können Sie gehen, um zu ändern, was Sie wollen über jquery. Wenn Ihr die Menge zu bewegen, können Sie etwas wie...
- und css3-transition kümmert sich um den rest. Wenn es etwas wie die änderung der Leichtigkeit geben, die Sie tun können, dass auch mit...
Ich weiß, das ist nicht genau das, was Sie suchen, aber die Chancen sind, wird es den trick tun.
Sieht es aus, als wenn Sie ein Verständnis von css3-keyframes. Ich empfehle jQuery.Keyframes zu "keyframes erzeugen", Sie können auch fügen Sie Ereignisse und callbacks zu den Animationen.
Ja, Sie können, wenn Sie schreiben Ihren javascript-code verwenden Sie die setAttribute () - Funktion der vs-Stil (), so dass Sie können mehr als eine Art von Stil. Legen Sie einfach die animation-name, animation-duration, animation-timing-Funktion oder irgendwelche anderen Typen, die Sie wünschen.