我有一个按钮和一个隐藏的div。当我单击按钮时,div将扩展宽度。到目前为止,这是我的HTML:
<div ng-controller="PageController">
<button ng-click="togglePage()>Show Details</div>
<div class="page-slide-animation" ng-show="page">
</div>
</div>
我的控制器提供以下方法:
$scope.togglePage= function() {
$scope.page = !$scope.page;
};
这是我的动画:
app.animation('.page-slide-animation', [function() {
return {
beforeAddClass : function(element, className, done) {
if(className == 'ng-hide') {
jQuery(element).animate({width: 'toggle'}, function() {
done();
});
}
},
removeClass : function(element, className, done) {
if(className == 'ng-hide') {
jQuery(element).animate({width: 'toggle'}, function() {
done();
});
}
}
};
}]);
到目前为止,此工作正常。我需要做的是在动画结束后在PageController
中调用控制器方法。执行此操作的最佳方法是什么(使用控制器中的超时为动画注入服务,...)?
答案 0 :(得分:0)
一种可能的解决方案是使用$ rootScope发出一个事件。$ emit并将其捕获到控制器中。
答案 1 :(得分:0)
尝试使用$ scope。$ emit并使用$ scope。$ on
在控制器中捕获它