Permet d'utiliser un exemple pour montrer comment les info-bulles peuvent être ajoutées à n'importe quel élément HTML de votre document.
REMARQUE:
Si ces exemples d'infobulles ne fonctionnent pas lorsque vous les placez dans votre page, vous avez un autre problème. Vous devez regarder des choses comme:
- L'ordre des scripts inclus
- Vérifiez si vous essayez d'initialiser des éléments HTML qui ont été supprimés
- Vérifiez si vous essayez d'appeler des méthodes dans des fichiers JS que vous n'incluez plus
Vérifiez si vous incluez le fichier JS qui fournit les fonctionnalités dont vous avez besoin (pas seulement pour les info-bulles, mais tous les composants que vous utilisez sur la page).
<head>
<link rel="stylesheet" href="/Content/bootstrap.css" />
<link rel="stylesheet" href="/Content/animate.css" />
<link rel="stylesheet" href="/Content/style.css" />
</head>
<body>
... your HTML code ...
<script src="/Scripts/jquery-2.1.1.js"></script>
<script src="/Scripts/bootstrap.min.js"></script>
<script src="/Scripts/app/inspinia.js"></script> <!-- if using INSPINIA -->
... your JavaScript initializers ...
</body>
L'échec de N'IMPORTE QUEL des éléments ci-dessus peut (et fait souvent) empêcher le javascript de se charger et / ou de fonctionner, et cela garde tout agréable et cassé.
EXEMPLES DE TRAVAIL
Disons que vous avez un badge et que vous souhaitez qu'il affiche une info-bulle lorsque l'utilisateur survole.
HTML d'origine:
<span class="badge badge-sm badge-plain">Admin Mode</span>
Infobulles Bootstrap simples
Si vous créez des info-bulles pour un élément HTML et que vous utilisez des info-bulles d'amorçage simple, alors vous serez responsable d'appeler les initialiseurs d'infobulles avec votre propre code JavaScript.
AVANT
<span class="badge badge-sm badge-plain">Admin Mode</span>
APRÈS
<span
class="badge badge-sm badge-plain"
data-toggle="tooltip"
data-placement="right"
title="Tooltip on right"
>Admin Mode</span>
INITIALISATEUR
<script>
// Initialize any Tooltip on this page
$(document).ready(function ()
{
$('[data-toggle="tooltip"]').tooltip();
}
);
</script>
Infobulles de modèles d'amorçage (comme INSPINIA)
Si vous utilisez un modèle d'amorçage (tel que INSPINIA), vous incluez un script de prise en charge pour prendre en charge les fonctionnalités du modèle:
<script src="/Scripts/app/inspinia.js" />
Dans le cas d'INSPINIA, le script inclus initialise automatiquement toutes les info-bulles en exécutant le code javascript suivant une fois le chargement du document terminé:
// Tooltips demo
$('.tooltip-demo').tooltip({
selector: "[data-toggle=tooltip]",
container: "body"
});
Pour cette raison, vous n'avez PAS à initialiser vous-même les info-bulles de style INSPINIA. Mais vous devez formater vos éléments d'une manière spécifique. L'initialiseur recherche les éléments HTML avec tooltip-demo
dans l' class
attribut, puis appelle la tooltip()
méthode pour initialiser tous les éléments enfants qui ont l'attributdata-toggle="tooltip"
défini.
Pour notre exemple insigne, placer un élément extérieur autour d' elle (comme un <div>
ou <span>
) qui a class="tooltip-demo"
, puis placez les data-toggle
, data-placement
et les title
attributs de l'info - bulle réelle au sein de l'élément qui est le badge. Modifiez le code HTML d'origine par le haut pour ressembler à ceci:
AVANT
<span class="badge badge-sm badge-plain">Admin Mode</span>
APRÈS
<span class="tooltip-demo">
<span
class="badge badge-sm badge-plain"
data-toggle="tooltip"
data-placement="right"
title="Tooltip on right"
>Admin Mode</span>
</span>
INITIALISATEUR
None
Notez que tous les éléments enfants dans le <span class="tooltip-demo">
élément auront leur info-bulle correctement préparée. Je pourrais avoir trois éléments enfants, tous ayant besoin d'infobulles, et les placer dans un seul conteneur.
Plusieurs éléments, chacun avec une info-bulle
<span class="tooltip-demo">
<span class="badge badge-sm badge-plain" data-toggle="tooltip" data-placement="right" title="A Tooltip">Text 001</span>
<span class="badge badge-sm badge-plain" data-toggle="tooltip" data-placement="right" title="Another Tooltip">Text 002</span>
<span class="badge badge-sm badge-plain" data-toggle="tooltip" data-placement="right" title="Third Tooltip">Text 003</span>
</span>
La meilleure utilisation pour cela serait d'ajouter le class="tooltip-demo"
à un <td>
ou un extérieur <div>
ou <span>
.
Infobulles Bootstrap simples lors de l'utilisation d'un modèle
Si vous utilisez INSPINIA, mais que vous ne voulez pas ajouter de balises externes <div>
ou supplémentaires <span>
pour créer des info-bulles, vous pouvez utiliser des info-bulles Bootstrap standard sans interférer avec le modèle. Dans ce cas, vous serez responsable de l'initialisation des info-bulles vous-même. Cependant, vous devez utiliser une valeur personnalisée dans l' class
attribut pour identifier vos éléments d'info-bulle. Cela empêchera votre initialiseur Tooltip d'interférer avec les éléments affectés par INSPINIA. Dans notre exemple, utilisons standalone-tt
:
AVANT
<span class="badge badge-sm badge-plain">Admin Mode</span>
APRÈS
<span
class="standalone-tt badge badge-sm badge-plain"
data-toggle="tooltip"
data-placement="right"
title="Tooltip on right"
>Admin Mode</span>
INITIALISATEUR
<script>
// Initialize MY standalone tooltips, ignoring INSPINIA-affected elements
$(document).ready(function ()
{
$('.standalone-tt').tooltip();
}
);
</script>