我正在使用 Angular 指令进行 Bootstrap 。
我在他们的示例中有一个弹出窗口:
<button popover="Hello, World!" popover-title="Title" class="btn btn-default ng-scope">Dynamic Popover</button>
当您再次单击该按钮时它会关闭。我想在用户点击任何地方时关闭它——以及任何其他打开的弹出窗口。
我没有看到执行此操作的内置方法。
最佳答案
angular.element(document.body).bind('click', function (e) {
var popups = document.querySelectorAll('.popover');
if(popups) {
for(var i=0; i<popups.length; i++) {
var popup = popups[i];
var popupElement = angular.element(popup);
if(popupElement[0].previousSibling!=e.target){
popupElement.scope().$parent.isOpen=false;
popupElement.remove();
}
}
}
});
关于javascript - 单击屏幕上的任意位置关闭所有 Angular JS Bootstrap 弹出窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22916471/