Comme je ne suis pas très compétent en javascript, je ne comprends pas du tout la documentation tooltip.js . Pourquoi ne pas inclure d'exemple pour des gens comme moi?
Comment dois-je installer cette bibliothèque pour fonctionner correctement?
tooltip.js
à webpack
(installé via npm)import tooltip from 'tooltip.js';
J'ai essayé d'utiliser le code de boostrap :
<p data-toggle="tooltip" data-placement="top" title="Tooltip on top">
Tooltip on top
</p>
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
Mais je n'utilise pas réellement bootstrap donc l'erreur est: TypeError:
$ (...). l'infobulle n'est pas une fonction
Il y a un exemple de code sur leur page d'exemple qui n'aide pas vraiment:
new Tooltip(referenceElement, {
placement: 'top', // or bottom, left, right, and variations
title: "Top"
});
Qu'est-ce que referenceElement
? Est-ce la classe de l'élément que je souhaite déclencher?
J'imagine quelque chose comme ça:
<p title="xyz" data-toggle="tooltip">hello</p>
Et puis écrivez le javascript un peu comme ça ???
new Tooltip('[data-toggle="tooltip"]', {
placement: 'top',
trigger: 'hover'
});
Cela ne fonctionne certainement pas. Il renvoie l'erreur:
TypeError: reference.addEventListener n'est pas une fonction
Comment? Pourquoi? Un peu de Codepen: https://codepen.io/Sepp/pen/ZowqdM
Sur la base de la documentation, vous devez appeler des info-bulles comme celle-ci
new Tooltip(referenceElement, {
placement: 'top', // or bottom, left, right, and variations
title: "Top"
});
donc, si vous voulez créer tous les éléments avec [data-toggle = "tooltip"] appelez tooltips js, vous pouvez faire comme ceci:
$( document ).ready(function() {
$( '[data-toggle="tooltip"]' ).each(function() {
new Tooltip($(this), {
placement: 'top',
});
});
});
Essayez avec le code ci-dessous:
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>