使用bootstrap的popover组件有点麻烦。
我的一个表单可以有多个动态添加的元素,因此我需要使用popover的selector选项动态地为所有这些元素添加一个popover。这很好。
我希望在点击新的弹出窗口时关闭其他弹出窗口,所以我也使用$(body).on("click", "selector")
并且因为某些原因调用$('selector').not(this).popover('hide');
这似乎会导致问题,第一个弹出窗口点击将显示然后没有其他人会,它会得到所有的错误。
如果我将popover更改为不使用选择器,则可行。我唯一能想到的是jQuery正在命令事件被解雇的方式吗?
答案 0 :(得分:0)
出于某种原因,使用弹出框中的selector:
是错误的。
试试这个:
$("[rel=popover]").popover({
content: bindToMe,
placement: 'right',
html: true
});
http://jsfiddle.net/skelly/nzM6F/11/
您还可以获得比body
选择器更好的性能。
答案 1 :(得分:0)
尝试将popover()添加到.popover类:
$("body").append('<div id="popover">I am popover content</div>');
$('#popover').hide();
var bindToMe = $("#popover").html();
$(".pover").popover({
content: bindToMe,
placement: 'right',
html: true,
trigger: 'manual'
});
$(".pover").click(function(e) {
$(".pover").not($(this)).popover('hide');
$(this).popover('show');
});