如何关闭AngularJS中的所有其他引导程序弹出窗口

时间:2014-02-07 16:57:54

标签: angularjs

是否有AngularJS方法可以在创建新的popovers时关闭其他popovers。例如,此代码:

http://plnkr.co/edit/wx7KbFDb9du6TnaFioy2?p=preview

我可以通过回到jQuery来实现它,还有其他方法吗?

1 个答案:

答案 0 :(得分:1)

因为弹出窗口可能存在于你的dom树中的任何地方。您需要创建自己的发布者子系统或使用内置的$ broadcast和$ on on angularjs方法。

当你有一个popover show你只需要调用$ rootScope。$ broadcast(你刚刚打开的popover)并且在所有听到这个事件的popover地方都有一个$ scope。$ on并关闭它们是开放的。

查看文档以获取更多信息http://docs.angularjs.org/api/ng。$ rootScope.Scope#methods_ $ on

希望这有帮助