2

我想要一个通知用户数据已更改的指令(例如通过更改背景颜色、摇晃、滑动等)。一个简单的例子是这样的:

html:

<change watch="heartbeat">{{heartbeat}}</change>

指示:

angular.module('module').directive('change', function($timeout) {

    return {
        restrict: 'E',
        link: function(scope, element, attrs) {
            scope.$watch(attrs.watch, function(value) {
                element.addClass("changed");
                $timeout(function() {
                    element.removeClass("changed");
                }, 600);
            });
        }
    }
});

如何更改上述指令以使其使用 ngAnimate 功能?我一直在研究 $animator 服务,但我不知道如何将它融入上述模型。

4

1 回答 1

1

我相信这目前是不可能的。

ngAnimate指令目前仅支持 5 种预定义类型的动画触发事件(v1.1.4):

  • 进入
  • 离开
  • 移动
  • 节目
  • 隐藏

以上每一项都与特定的 DOM 操作操作相结合,而您要实现的目标不属于这 5 个类别中的任何一个,因此在支持自定义动画事件之前可能不会。

更多解释可以在这里找到:http: //gsklee.im/post/50254705713/nganimate-your-angularjs-apps-with-css3-and-jquery

于 2013-05-12T13:52:56.650 回答