【发布时间】:2015-12-01 11:32:47
【问题描述】:
我读过Angular UI Bootstrap adding a close button 和show hidden div on ng-click within ng-repeat。我想使用后一篇文章中的解决方案并将其应用于第一篇文章中所述的问题。本质上,我希望能够使用ng-show 或ng-click 关闭Angular UI Bootstrap 弹出窗口。
我有一个示例代码来说明这一点。这段代码只是在单击特定元素时将 CSS 类应用于特定元素,并在再次单击时将其删除:
<div ng-class="{'gray-inset-border': style}">
<div ng-click="style=!style"></div>
</div>
每当单击包含弹出框的元素时,都会创建一个弹出框模板。在 Chrome DOM 检查器中,开始标记如下所示:
<div class="popover ng-isolate-scope right fade in"
tooltip-animation-class="fade" tooltip-classes=""
ng-class="{ in: isOpen() }" popover-template-popup="" title=""
content-exp="contentExp()" placement="right" popup-class="" animation="animation"
is-open="isOpen" origin-scope="origScope"
style="top: 317.5px; left: 541.8125px; display: block;">
注意ng-class="{in: isOpen()}"。我假设这控制弹出框是否打开,并希望使用与上面示例中相同的ng-click 方法,并将其应用于弹出框内的按钮。但是,当我尝试这样做时,它没有用。我也无法在ui-bootstrap-tpls.js 代码的任何地方找到弹出框模板。据我所知,popover 的创建是巫术魔法。
同样令人沮丧的是,Angular UI Bootstrap 还没有这个功能。一个多星期以来,我一直试图断断续续地解决这个问题,而我看到的每一个“解决方案”似乎都对我不起作用。
我是否正确理解了ng-class="{in: isOpen()}"?在哪里编辑弹出框模板以添加关闭按钮?
【问题讨论】:
-
你有问题吗?
标签: javascript angular-ui angular-ui-bootstrap popover