tooltip.js popper.js用法示例

时间:2018-05-21 09:49:48

标签: jquery popper.js

由于javascript不是很精通,我完全不了解tooltip.js文档。为什么不包括像我这样的人的例子?

我是否必须安装此库才能正常工作?

  1. 我将tooltip.js添加到webpack(通过npm安装)
  2. 然后我import tooltip from 'tooltip.js';
  3. 然后是什么?
  4. 我尝试使用boostrap中的代码:

    <p data-toggle="tooltip" data-placement="top" title="Tooltip on top">
      Tooltip on top
    </p>
    $(function () {
      $('[data-toggle="tooltip"]').tooltip()
    })
    

    但我实际上并没有使用bootstrap,所以错误是:TypeError:

      

    $(...)。tooltip不是函数

    their example page上有一些示例代码并没有真正帮助:

    new Tooltip(referenceElement, {
        placement: 'top', // or bottom, left, right, and variations
        title: "Top"
    });
    

    什么是referenceElement?它是我要触发的元素的类吗?

    我想象这样的事情:

    <p title="xyz" data-toggle="tooltip">hello</p>
    

    然后写一些像这样的javascript ???

    new Tooltip('[data-toggle="tooltip"]', {
        placement: 'top',
        trigger: 'hover'
    });
    

    这当然行不通。它返回错误:

      

    TypeError:reference.addEventListener不是函数

    如何?为什么?一点点Codepen:https://codepen.io/Sepp/pen/ZowqdM

2 个答案:

答案 0 :(得分:1)

尝试使用以下代码:

document.addEventListener('DOMContentLoaded',function(){
    var trigger = document.getElementsByClassName("is-success")[0];
    var instance = new Tooltip(trigger,{
        title: trigger.getAttribute('data-tooltip'),
        trigger: "hover",
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://unpkg.com/popper.js"></script>
<script src="https://unpkg.com/tooltip.js"></script>
<button class="button is-success" data-tooltip="Click Here">Hover Me</button>

答案 1 :(得分:0)

根据文档,你必须像这样调用工具提示

new Tooltip(referenceElement, {
    placement: 'top', // or bottom, left, right, and variations
    title: "Top"
});

所以,如果你想使用[data-toggle =“tooltip”] make all元素调用工具提示js,你可以这样做:

$( document ).ready(function() {
  $( '[data-toggle="tooltip"]' ).each(function() {
    new Tooltip($(this), {
      placement: 'top',
    });
  });
});