javascript - 访问css3动画的关键帧

标签 javascript html css

我发现window对象中有一个名为WebKitCSSKeyframesRule的函数,但是执行这个函数似乎会导致错误。有谁知道这个功能是如何工作的?有没有修改css3动画关键帧的好方法?

最佳答案

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 属性和 addRuledeleteRule 方法修改、添加、删除框架规则,就像您通常对常见样式表所做的那样:

for (var i = 0; i < keyframesRule.cssRules.length; i++)
    alert(keyframesRule.cssRules[i].keyText + " { "
            + keyframesRule.cssRules[i].style.cssText + " }");

这与提醒 keyframesRule.cssRules[i].cssText 相同。

显然,这都是 vendor 前缀,因此对于 Firefox,您必须使用 MozCSSKeyframesRule 来代替,依此类推。

关于javascript - 访问css3动画的关键帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12313909/

相关文章:

javascript - 为什么 "npm start"可以工作,但 "react-scripts start"却不能工作,而 "npm start"显然是执行的?

javascript - 如何确保我的第一个 React 渲染具有来自 localStorage 的值?

javascript - 将 Trello 卡成员拉入谷歌表格

html - bootstrap 4 不显示文本

javascript - Image Sprites 看起来起伏不定/生涩

javascript - 无法退出 Google OAuth2

javascript - 仅在网站可用时重定向浏览器

javascript - 复选框 onchange 事件未触发

javascript - 不使用插件保护图像

javascript - 使用 css 将 div 从一个父级移动到另一个父级