类似于this问题,我的弹出窗口没有显示在第二,第四,第六......点击,而我试图将其淡出。我的代码:
$('[data-toggle="popover"]').popover({
placement: 'bottom',
delay: {
show: 50
}
});
$('[data-toggle="popover"]').click(function () {
setTimeout(function () {
$('.popover').fadeOut('slow');
}, 1000);
});
链接中提供的答案声称它是一个Bootstrap 3.3.5错误。虽然,我正在使用bootstrap 3.3.7,但提议的解决方案并不能解决问题:
if ($.fn.popover.Constructor.VERSION == "3.3.7") {
$('[data-toggle="popover"]').on("hidden.bs.popover", function() {
$(this).data("bs.popover").inState.click = false
})
}
要查看操作中的错误:JSFiddle
答案 0 :(得分:3)
似乎该错误尚未在3.3.7中修复,但建议的解决方案确实有效。您仍然需要使用.popover('hide')
隐藏弹出框,而不是仅仅淡出。以下将解决这个问题:
$('.popover').fadeOut('slow').popover('hide');
结合使用:
if ($.fn.popover.Constructor.VERSION == "3.3.7") {
$('[data-toggle="popover"]').on("hidden.bs.popover", function() {
$(this).data("bs.popover").inState.click = false
})
}