我可以使用data-trigger='focus'
在外部点击时关闭弹出框,或在再次单击按钮时使用data-trigger='click'
。但我不能同时拥有。也就是说,如果我使用focus
,则单击弹出按钮将不会执行任何操作。
我想在任何一种情况下解雇popover,有没有人知道如何轻松地做到这一点?
我尝试了data-trigger='focus click'
,但它不起作用。
编辑:我不认为这是一个重复的问题。当然,这个问题的解决方案对我有用。但是这个问题的标题是:“如何通过点击外部来解除Twitter Bootstrap popover”是误导性的。如果我只是想通过点击外部来关闭popover,我只需要data-trigger='focus'
,如引导文档所述:
使用焦点触发器消除用户下次点击时的弹出窗口。
但正如我所解释的那样,如果再次点击弹出式触发器,它将无效。
答案 0 :(得分:1)
我不确定你的意思,如果没有看到任何代码,但我会使用jQuery:
$('body').on('click', function (e) {
if ($(e.target).data('toggle') !== 'popover'
&& $(e.target).parents('.popover.in').length === 0) {
$('[data-toggle="popover"]').popover('hide');
}
});
我希望我有所帮助,祝你好运!