【发布时间】:2012-01-08 19:52:44
【问题描述】:
我为网站创建了一个相当复杂的菜单。菜单来自大量基于 CSS3 的动画。但是,当我导航到不同的页面时,菜单应该最初构建 - 并且没有所有动画,而是以 JS 方式完成而不是服务器端。
现在我想知道如何暂时完全禁用所有过渡/动画,直到菜单建立。
我想过创建一个覆盖动画的子类,但它似乎不起作用,因为它总是在使用基类中定义的动画/过渡?
【问题讨论】:
标签: javascript animation css transitions
我为网站创建了一个相当复杂的菜单。菜单来自大量基于 CSS3 的动画。但是,当我导航到不同的页面时,菜单应该最初构建 - 并且没有所有动画,而是以 JS 方式完成而不是服务器端。
现在我想知道如何暂时完全禁用所有过渡/动画,直到菜单建立。
我想过创建一个覆盖动画的子类,但它似乎不起作用,因为它总是在使用基类中定义的动画/过渡?
【问题讨论】:
标签: javascript animation css transitions
我建议通过在构建菜单后由 JavaScript 添加的类来应用您的动画/过渡。
animation-play-state 属性可以暂停动画,但它只出现在 Safari 5 和 Chrome 4 中(与 Safari 4 和 Chrome 2 中的其他动画属性相反),我不确定如果它适合您的目的。
【讨论】:
-webkit-animation-play-state 的提及 - 我以前以为我有过,虽然我不确定它会帮助你的情况。
-webkit-animation-name 属性设置为none 以禁用动画。
您可以在构建菜单时将transition-duration 设置为0s,然后再将其设置回所需的值。
【讨论】: