单击一个元素时,我正在对其他元素(例如同级元素)执行动画,如何从同级元素获取 callback
到 scope
函数?
这里是代码:
var myApp = angular.module('myApp', ['ngAnimate']);
myApp.controller('count', function($scope) {
$scope.flag=true;
$scope.animate = function () {
$scope.flag = !$scope.flag;
}
});
最佳答案
$animate
服务可用于处理 enter
和 leave
回调。
您已使用 ng-if
来显示/隐藏示例中的内容,但 ng-if
没有任何钩子(Hook)来传递回调。所以您必须编写自己的指令(例如animated-if
)并提供自定义 Hook 来传递回调(animated-if-leave-callback
和animated-if -输入回调
)。
要在 ng-leave 之后触发事件,请使用 $animate.leave(element,scope.leaveOnClick)
输入有点复杂,因为在指令初始加载时不调用回调。
var callback = !oldValue && $scope.animatedIfEnterCallback ? $scope.animatedIfEnterCallback : (function() {});
$animate.enter(clone, $element.parent(), $element, callback);
这是enter link description here更新了 plunkr
关于jquery - 如何从其他元素动画完成中获取 `callback`,而不是从 self 指令中获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30818783/