这是我的popover元素:
<a data-placement="bottom" data-toggle="popover" data-trigger="focus" tabindex="1"></a>
我的bootstrap popover内容是一个社交媒体按钮。当你点击它时它会分享一些东西。但是,未正确触发click事件。当我单击显示弹出窗口时可用的共享按钮时,它会在3次点击中失败一到两次。
var options = {};
options.content = function() {
return "<ul class='social social-list'>" +
"<li><a id='fa-facebook' class='social-fb'><i class='fa fa-facebook fa-lg'></i></a></li>" +
"</ul>";
};
options.trigger = 'focus';
options.html = true;
$('[data-toggle="popover"]').popover(options).on('shown.bs.popover', function(){
var fbShareEvent = $("#fa-facebook").data("events");
if(!fbShareEvent){
$("#fa-facebook").on("click",function(event){
fbShare();
});
}
}
答案 0 :(得分:0)
花了半天后,我找到了解决方案。由于焦点事件触发了弹出窗口隐藏操作,因此在触发单击操作之前有时会关闭弹出窗口。我在我的popover选项中添加了delay参数。
options.delay = {'hide': 500};
此参数会在给定时间内延迟关闭操作。因此,可以在关闭弹出窗口之前处理单击操作。