Ответ 1
Простой пример, основанный на врожденном мониторинге добавления и удаления классов ngAnimate. Определить 3 класса css:
.transformable {
-webkit-transition: height 100ms linear;
-moz-transition: height 100ms linear;
-o-transition: height 100ms linear;
-ms-transition: height 100ms linear;
transition: height 100ms linear;
}
.small {
height:100px;
}
.big {
height:300px;
}
и объявите свой div:
<div class="transformable" ng-class="{'small':isSmall, 'big':!isSmall}" ng-click="isSmall = !isSmall"> </div>
Это даст вам изменение размера div на клике: angular обнаруживает добавление/удаление малых/больших классов и активирует анимацию на основе преобразованных значений класса css. Вы можете делать аналогичные действия с другими готовыми к анимации директивами (например, ng-repeat) или создавать свое собственное поведение. Статья из jessegavin кажется хорошим праймером на этом.