如何在父级上更改ngClass时为子元素设置动画

时间:2013-12-17 10:03:00

标签: angularjs ng-animate angular-transitions

是否可以在子元素上定义转换,并且当父元素的ngClass发生更改时,ngAnimate会将它们考虑在内吗?

到目前为止,我还没能做到这一点 http://plnkr.co/edit/ulq1MQNDtY9cO2pcjdzF?p=preview

感谢。

1 个答案:

答案 0 :(得分:4)

我认为你尝试这样做的方式不可能。 Angular正在基类上寻找动画/过渡属性来确定时间。但在您的情况下,所有这些属性都是在子元素上定义的。因此,结果Angular无法连接必要的动画钩子。

您可以做的是在执行动画步骤时为Angular提供提示。像这样:

.container {
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}

这只是重复的过渡样式,可以告诉Angular过渡所需的一切。

演示plunk

看起来提供transition-duration: 1s只是重要的一部分,所以它可以是:

.container {
    -webkit-transition-duration: 1s;
    -moz-transition-duration: 1s;
    -o-transition-duration: 1s;
    -ms-transition-duration: 1s;
    transition-duration: 1s;
}
相关问题