jquery - 如何从其他元素动画完成中获取 `callback`,而不是从 self 指令中获取

标签 jquery angularjs

单击一个元素时,我正在对其他元素(例如同级元素)执行动画,如何从同级元素获取 callbackscope 函数?

这里是代码:

var myApp = angular.module('myApp', ['ngAnimate']);

myApp.controller('count', function($scope) {
    $scope.flag=true;
    $scope.animate = function () {
        $scope.flag = !$scope.flag;
    }
});

DEMO

最佳答案

$animate 服务可用于处理 enterleave 回调。

您已使用 ng-if 来显示/隐藏示例中的内容,但 ng-if 没有任何钩子(Hook)来传递回调。所以您必须编写自己的指令(例如animated-if)并提供自定义 Hook 来传递回调(animated-if-leave-callbackanimated-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

-source

关于jquery - 如何从其他元素动画完成中获取 `callback`,而不是从 self 指令中获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30818783/

相关文章:

javascript - 将图像 + 数据 ajax post 发送到 ashx 处理程序

Javascript\Angular 函数作用域混淆

javascript - 自定义菜单在移动滚动条上折叠

jquery - fitty.js 只适用于第一类元素

html - 为什么我不能将所有 4 个元素都放在同一行中?

angularjs - 基于子级数量的 ngHide 或 ngShow

javascript - 从 AngularJS Controller 获取数据

python - 将 url 参数从 Flask 传递到 Angular

javascript - 正则表达式 - 替换特殊字符,点除外

jquery - 调整窗口大小时多次调用函数 [JQuery]