我似乎无法在上班途中获得有角度的动画,而且似乎也没有任何野外的例子。以演示小提琴为例: http://jsfiddle.net/yfajy/
在过滤列表时,向css添加移动指令(如下所示)不会产生任何动画效果:
.example-repeat-move-setup { opacity:1;
color:red }
.example-repeat-move-setup.example-repeat-move-start { opacity:1;
color:black;}
有人可以发布一个有效的例子吗?
答案 0 :(得分:14)
我让它处理了一些乱七八糟的使用下一个兄弟css选择器+
(fiddle)。显然,move
动画应用于第一个移动元素和倒数第二个元素之间的所有元素,但不应用于最后一个更改元素。
你可以在this fiddle中看到,我将两个人交换4个空格,移动动画应用于元素0,1,2和3但不是4,即使我只交换了元素0和4。 next sibling selector会覆盖为元素1,2和3设置的值,并且是唯一应用于4的样式。
在this fiddle中你可以真正看到它,有一个按钮用第3个元素替换第6个元素,并将新人放在第1个和第3个元素中。第1和第3个获得输入动画,而第4个和第5个获得移动动画,第6个获得任何内容,即使第6个位置是唯一一个移动的人。
答案 1 :(得分:11)
有一篇非常好的文章,教程在:
http://www.yearofmoo.com/2013/04/animation-in-angularjs.html
答案 2 :(得分:8)
因此,过滤和退出项目只会触发输入和离开动画,而不是移动动画。
要触发移动动画,您需要重新排序项目,例如jsfiddle example:
$scope.shuffle = function() {
$scope.friends = _($scope.friends).shuffle();
}
您可能还想查看有关ngAnimate的更深入的解释:
http://gsklee.im/post/50254705713/nganimate-your-angularjs-apps-with-css3-and-jquery