jquery 引导工具提示在标记单击时不隐藏< a>

ckx4rj1h  于 2023-10-17  发布在  jQuery
关注(0)|答案(5)|浏览(121)

我使用的触发器作为悬停,但当我点击一个链接与此功能的工具提示并没有消失,它将在屏幕上永远令人不安
工具提示使用以下代码示例化

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

在标签一切工作完美,在某些情况下也工作,我不知道为什么有些会发生这种情况,有人给予我一个光?
编辑:我也尝试过用这段代码来隐藏带有click事件的工具提示

$(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>
sxpgvts3

sxpgvts31#

我试图隐藏所有的工具提示,只要页面加载和它的工作

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

但我相信这不是最好的解决方案,我寻求一个更好的解决方案,另一个解决方案是这样的

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

bfhwhh0e2#

<a>标记定义了一个超链接,用于从一个页面链接到另一个页面。因此它不适合这样的单页操作。但您可以通过.focusout()将焦点转移到元素上来解决此问题

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

xkftehaa3#

正如我对here的回答,你可以通过删除创建的HTML元素来隐藏Bootstrap的所有工具提示。

tktrz96b

tktrz96b4#

此代码用于标记点击隐藏悬停和您删除点击事件从下面的代码悬停不隐藏。
试试这个代码!成功了

$('[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>
qqrboqgw

qqrboqgw5#

这是因为触发器未设置。trigger的默认值是'hover focus',因此工具提示在单击一个按钮后保持可见,直到单击另一个按钮,因为该按钮是焦点。
所以你所要做的就是将trigger定义为hover。下面是您在单击按钮后链接到的没有持久化工具提示的同一示例:

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

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

相关问题