Bootstrap 4工具提示使用标题以外的自定义属性来提供工具提示的文本

我有一个使用工具提示的Bootstrap 4应用程序。我想一一切换工具提示,并仅在单击时显示它们。我可以使用:

 <input type="text" id="name" class="form-control" autocomplete="off" 
 data-toggle="tooltip" data-placement="bottom" title="Write name here.">

我正在使用以下javascript分别显示工具提示,这些javascript是在单击按钮时触发的:

 $('#name').tooltip("show");

然后我使用以下脚本隐藏/处理它:

 $('#name').tooltip("dispose");

我使用dispose的原因是,除非按下按钮,否则我不希望工具提示可见。

问题在于,在输入字段上悬停鼠标时,浏览器(在我的情况下为Firefox Developer Edition)以自己的样式显示工具提示,因为工具提示文本位于title属性中。

引导程序中是否存在一种方法来代替将文本显示在另一个data-tooltiptitle属性中,例如:

<input type="text" id="name" class="form-control" autocomplete="off" 
data-toggle="tooltip" data-placement="bottom" data-tooltiptitle="Write name here.">

然后告诉工具提示使用一些jQuery为文本使用data-tooltiptitle属性。

感谢您的帮助。

asusxiao123 回答:Bootstrap 4工具提示使用标题以外的自定义属性来提供工具提示的文本

您可以使用title选项并将其设置为功能。悬停时,此函数将与悬停元素的实例一起调用。然后,您可以使用getAttribute获取自定义属性。

$(document).ready(function() {
  $('[data-toggle="tooltip"]').tooltip({
    title: function() {
      return 'No Hooray!!';
    }
  });
  $('#link').tooltip({
    title: function() {
      return this.getAttribute('custom-title');
    }
  });
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<a href="#" data-toggle="tooltip" custom-title="Hooray!">Hover over me</a>

<input type="text" id="link" custom-title="Hooray!">

本文链接:https://www.f2er.com/3099107.html

大家都在问