我发现窗口对象中有一个名为WebKitCSSKeyframesRule
的函数,但似乎执行此函数会导致错误。有谁知道这个功能是如何工作的?有没有一种好的方法来修改css3动画的关键帧?访问css3动画的关键帧
2
A
回答
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
来代替,等等。
+0
太棒了!这是一个很好的解决方案,谢谢 – xiaohao
相关问题
- 1. CSS3动画(webkit的关键帧)问题
- 2. CSS3动画关键帧
- 3. CSS3关键帧动画 - 类
- 4. CSS3关键帧动画:无动画
- 5. CSS3动画(关键帧动画)
- 6. 带关键帧的CSS3动画
- 7. CSS3关键帧动画反转跳跃关键帧
- 8. 存储和访问动画关键帧
- 9. CSS3关键帧动画不起作用
- 10. 暂停css3关键帧动画
- 11. CSS3缩放动画关键帧
- 12. css3关键帧悬停动画火狐
- 13. CSS3关键帧动画Retina显示屏
- 14. CSS3转换,关键帧,动画
- 15. CSS3在关键帧动画后消失
- 16. CSS3动画(关键帧)在IE9
- 17. 停止CSS3关键帧动画
- 18. CSS3关键帧跳转到动画结束时没有动画
- 19. CSS3动画/关键帧,在IE11问题中用vw转换
- 20. 关键帧动画
- 21. CSS3关键帧动画:结束并停留在最后一帧
- 22. 关于100%宽度/高度背景的CSS3关键帧动画
- 23. 如何移动到CSS3动画中的某个关键帧?
- 24. 关键帧动画的关键时间
- 25. css3动画帧逐帧
- 26. CSS3动画(逐帧)
- 27. CSS3关键帧动画stopmotion图像抖动
- 28. CSS3动画:在0%继承财产的关键帧
- 29. 使用关键帧的CSS3动画不交替拍摄
- 30. @ font-face使用CSS3关键帧动画时裁剪的字体
我认为这是webkit中的一个内部函数:http://opensource.apple.com/source/WebCore/WebCore-658.28/css/WebKitCSSKeyframesRule.cpp –