Bootstrap 工具提示不隐藏在 <a> 标签点击

Bootstrap tooltip don't hide on <a> tag click

我将触发器用作悬停,但是当我单击具有此功能的 link 时,工具提示不会消失,它会永远干扰屏幕

工具提示是用这段代码实例化的

$('[data-toggle="tooltip"]').tooltip({
    container: 'body',
    trigger: 'hover'
});

在标签中一切正常,在某些情况下也可以正常工作,我不知道为什么会发生这种情况,有人可以给我点亮吗?

编辑:我也尝试过使用此代码通过点击事件隐藏工具提示

$(document).ready(function(){
     $('[data-toggle="tooltip"]').click(function () {
         $('[data-toggle="tooltip"]').tooltip("hide");
     });
});

但是不行

编辑*:图片效果(文字为葡萄牙语)

编辑**:HTML代码

<ul style="clear: both;" class="pager wizard">
    <li class="button-previous previous"><a title="Voltar" data-toggle="tooltip"><i class="fa fa-arrow-left"></i></a></li>
    <li class="voltar"><a title="Voltar" data-toggle="tooltip"><i class="fa fa-arrow-left"></i></a></li>

    <li class="finalizar"><a>Finalizar<i class="fa fa-check" style="padding-left:5px;"></i></a></li>
    <li class="next"><a class="competencia-stripe" data-toggle="tooltip" title="Continuar"><i class="fa fa-arrow-right" ></i></a></li>
</ul>

我试图在页面加载后立即隐藏所有工具提示并且它起作用了

$([data-toggle="tooltip"]).on('load', function(){
         $('[data-toggle="tooltip"]').tooltip("hide");
});

但我认为这不是最好的解决方案,我寻求更好的解决方案,我想到的另一个解决方案是这个

window.addEventListener("click", function (event) {
    $('.tooltip.fade.top.in').tooltip("hide");
}

<a>标签定义了一个hyperlink,用来link从一页到另一页。 所以它不适合像这样的一页操作。但您可以通过 .focusout()

失去对元素的关注来解决此问题
$(document).ready(function(){
   $('[data-toggle="tooltip"]').click(function(){
      $(this).focusout();
   });
});

这是因为没有设置触发器。触发器的默认值为 'hover focus',因此工具提示在单击按钮后保持可见,直到单击另一个按钮,因为该按钮已获得焦点。

因此,您只需将触发器定义为 'hover' 即可。在您链接到的同一示例下方,单击按钮后没有保留工具提示:

$('[data-toggle="tooltip"]').tooltip({
    trigger : 'hover'
})  

文档示例 fiddle -> http://jsfiddle.net/vdzvvg6o/

此代码用于标记单击以隐藏悬停,您从下面的代码中删除单击事件以悬停不隐藏。

Try This Code...! It's Worked.

$('[data-toggle="tooltip"]').tooltip({
    trigger : 'hover'
})
$('.btn-secondary').click(function(){
 $('[data-toggle="tooltip"]').tooltip('hide');
});
.tooltiphide {
  margin-top: 50px;
  margin-top: 50px;
}
<!DOCTYPE html>
<html>
<head>
 <title>Boostrap Tooltip</title>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
  <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
</head>
<body>
  <div class="tooltiphide">
    <a href="#" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">
      Tooltip on top
    </a>
    <a href="#" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
      Tooltip on right
    </a>
    <a href="#" class="btn btn-secondary" data-toggle="tooltip" data-placement="bottom" title="Tooltip on bottom">
      Tooltip on bottom
    </a>
    <a href="#" class="btn btn-secondary" data-toggle="tooltip" data-placement="left" title="Tooltip on left">
      Tooltip on left
    </a>
  </div>
</body>
</html>