【发布时间】:2015-01-01 08:27:17
【问题描述】:
我有一个弹出窗口,我想在单击屏幕上的其他任何位置时关闭它,我通过在打开函数 $scope.open = function(){...} 内触发 $document.bind('click',function(){...}); 来做到这一点。
我还有另一个关闭$scope.close = function(){...}的功能
目标是移除 close 函数内部的绑定。
我是 Angular 的新手,所以很遗憾我不完全理解我在这个问题上找到的答案。从理论上讲,我知道我可以使用$destroy 来实现这一点,但我不知道如何在物理上实现它。有人可以教我怎么做吗?
编辑:我在控制器和指令中这样做。
【问题讨论】:
-
不要在控制器中操作 DOM。您在阅读 Angular 时一定遇到过这种情况?假设控制器不知道 DOM 存在。
-
OP 从未提及控制器。也许他/她正在使用链接功能?
-
@NewDev 这是有道理的,但不幸的是我不知道有任何其他方法可以关闭弹出窗口。你能推荐什么吗?
-
@seldary 我在控制器和指令中使用它,所以它变得非常混乱。
-
@muudless, stackoverflow.com/questions/15812203/…
标签: angularjs