Puis-je utiliser du HTML complexe avec Twitter Bootstrap de l'info-bulle?
Si je coche la documentation officielle, je peux voir une propriété appelée HTML:
Name | Type | default | Description
----------------------------------------------------------------------------
html | boolean | false | Insert html into the tooltip.
If false, jquery's text method
will be used to insert content
into the dom. Use text if you're
worried about XSS attacks.
Il dit, "insérer du code html dans l'info-bulle", mais le type est un booléen. Comment puis-je utiliser du html complexe à l'intérieur d'une info-bulle?
Vous devez vous connecter pour publier un commentaire.
Ce paramètre est seulement de savoir si vous allez utiliser le html complexe dans l'info-bulle. Mis à
true
et de cliquer sur le code html dans letitle
attribut de la balise.Voir ce violon ici - j'ai mis l'attribut html pour vrai à travers la
data-html="true"
dans le<a>
tag puis juste d'ajouter dans le code html ad hoc comme un exemple.Comme normale, à l'aide de
data-original-title
:Html:
Javascript:
Le code html paramètre spécifie la manière dont le texte de l'infobulle devrait être transformé en des éléments du DOM. Par défaut, le code Html est échappé dans les info-bulles pour empêcher les attaques XSS. Dites vous permet d'afficher un nom d'utilisateur sur votre site et de vous montrer une petite bio dans une info-bulle. Si le code html n'est pas échappé, et l'utilisateur peut modifier la bio eux-mêmes, ils pourraient injecter du code malveillant.
data-original-title
est où le bootstrap stocker temporairementtitle
si elle est présente.data-title
est suffisant si vous n'avez pas de titre, comme un<a href="#" title="xxx">
Une autre solution pour éviter l'insertion de code html dans de données-titre est de créer indépendant de la div avec info-bulle du contenu html, et de se référer à cette div lors de la création de votre info-bulle :
De cette façon, vous pouvez créer des complexes lisible contenu html, et de l'activer comme beaucoup d'info-bulles que vous le souhaitez.
démonstration en direct ici sur codepen
La
html
de données de l'attribut est exactement ce qu'il dit il le fait dans les docs. Essayez ce petit exemple, pas de JavaScript nécessaire (coupée en lignes de clarification):JSFiddle démos:
ensemble "html" option à true si vous voulez avoir du html dans une info-bulle. Html est déterminé par l'option "titre" (lien de l'attribut title ne doit pas être défini)
En direct de l'échantillon