我遇到一个问题,工具提示在点击一次后需要双击。例如,我单击tooltip1,然后单击tooltip2,然后再次单击tooltip1。第二次单击tooltip1时,再次显示工具提示之前需要两次单击。
总体而言,我正在寻找的是一个包含4个工具提示的页面,当我单击链接并且一次只显示一个工具提示时将显示工具提示,因此如果显示一个工具提示,则其他3个被隐藏。
一个例子是https://jsfiddle.net/9656mv9w/
$(document).ready(function() {
$('[data-toggle="tooltip"]').tooltip();
});
$(document).on('show.bs.tooltip', function() {
$('.tooltip').not(this).hide();
});
答案 0 :(得分:1)
我有同样的问题。解决方法是检测应该关闭的show事件上的任何打开工具提示,然后触发单击以关闭它们。
//init bootstrap tooltips
$('[data-toggle="tooltip"]').tooltip({
trigger:'click'
});
//listen for the show event on any triggered elements
$('[data-toggle="tooltip"]').on('show.bs.tooltip', function() {
//get a reference to the current element that is showing the tooltip
var triggeredElement = $(this);
//loop through all tooltips elements
$('[data-toggle="tooltip"]').each(function(){
//if they are not the currently triggered element and have a tooltip,
//trigger a click to close them
if($(this) !== triggeredElement && $(this).next().hasClass('tooltip')) {
$(this).click();
}
})
});