ウィンドウオブジェクトに呼び出さWebKitCSSKeyframesRule
れた関数があることがわかりましたが、この関数を実行するとエラーが発生するようです。この関数がどのように機能するか知っている人はいますか?css3アニメーションのキーフレームを変更する良い方法はありますか?
質問する
875 次
1 に答える
2
WebKitCSSKeyframesRule
これは関数ではありません。スタイルシートを解析するときに内部的に使用されるコンストラクターです。
ルールを変更する@keyframes
には、最初にルールを見つける必要があります。
var styleSheet = document.styleShees[0], keyframesRule;
for (var i = 0; i < styleSheet.cssRules.length; i++) {
if (styleSheet.cssRules[i].type === CSSRule.WEBKIT_KEYFRAMES_RULE) {
keyframesRule = styleSheet.cssRules[i];
break;
}
}
alert(keyframesRule instanceof WebKitCSSKeyframesRule); // alerts "true"
ルールを取得したら、一般的なスタイルシートで通常行うように、ルールのcssRules
プロパティとメソッドを使用してフレームルールを変更、追加、削除できます。addRule
deleteRule
for (var i = 0; i < keyframesRule.cssRules.length; i++)
alert(keyframesRule.cssRules[i].keyText + " { "
+ keyframesRule.cssRules[i].style.cssText + " }");
これはアラートと同じkeyframesRule.cssRules[i].cssText
です。
明らかに、これはすべてベンダーのプレフィックスであるため、Firefoxの場合はMozCSSKeyframesRule
代わりに使用する必要があります。
于 2012-09-07T08:18:14.550 に答える