【发布时间】:2023-03-31 23:16:01
【问题描述】:
我正在使用新的 AngularJS 1.2 方法 (year of moo article) 来制作使用 CSS3 过渡的动画。如果浏览器不支持 CSS 动画,我想有条件地应用后备 jQuery 动画。
- 仅使用 CSS ng-enter、ng-enter-active 等时,我的 CSS 动画效果很好。
- 我的 jQuery 动画在使用 app.animations("...") 时运行良好,如下所示
- 我正在使用 Modernizr,因此 .no-cssanimations 类已应用于我的 html 文档。
- 当 IE9 等浏览器不支持 CSS 动画时,我想有条件地应用 jQuery 动画。
现在,我正在尝试通过类选择器 ".no-cssanimations .slideup-form" 像这样...
//Simplified angular animation example
app.animation("**.no-cssanimations .slideup-form**", function () {
return {
enter: function (element, done) { ... },
leave: function (element, done) { ... }
}
});
这是行不通的。有没有更好的方法来做到这一点?
谢谢...
更新:
我无法弄清楚上面的选择器方法 - 但我通过在 javascript 中测试 Modernizr 对象有条件地调用 app.animation() 使其工作。没想到你可以这样测试。
if (Modernizr.canvas) { ... }
再次感谢您的帮助。
【问题讨论】:
-
如果你想做 JavaScript 动画,我认为 app.animation 是最好的选择。你的选择器
**.no-cssanimations .slideup-form**有没有击中任何东西? -
我已经使用简单的 CSS 测试验证了选择器是有效的——但 app.animation() 似乎没有找到它。感谢您的提示。
标签: angularjs