我正在尝试在用户点击链接时制作灯箱。我正在使用这个灯箱代码here。我正在使用这个jsbin。
我这里有这个代码:
<button ng-click="add_overlay()">Button</button>
<div class="lightbox" ng-lightbox='{"trigger": "manual"}' id="lightbox">
<h1>This is some content</h1>
</div>
我想通过添加ng-click来调用叠加层,它会在点击时显示它,但它似乎不起作用。我永远不会有角度,所以任何帮助一般都会受到赞赏。如何在点击时生成灯箱?
答案 0 :(得分:3)
首先,在add_overlay()
指令之外,您无法访问ngLightbox
,因此Angular不知道您的ng-click
上下文中的方法是什么。
您还使用两个版本的Angular源,1.2.1和1.0.7。
如果你看一下angular-lightbox来源,你会看到一个可覆盖的defaults
对象,这样你就可以提供你希望灯箱应用到的元素:
var defaults = {
'class_name': false,
'trigger': 'manual',
'element': element[0],
'kind': 'normal'
}
所以,设置你的按钮,指定目标元素:
<button ng-lightbox='{"trigger": "manual", "element": "lightbox"}'>Button</button>