Jeśli sprawdzę oficjalną dokumentację , zobaczę właściwość o nazwie 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.
Mówi „wstaw HTML do podpowiedzi”, ale typ jest logiczny. Jak mogę używać złożonego kodu HTML wewnątrz podpowiedzi?
javascript
html
twitter-bootstrap-3
tooltip
sergserg
źródło
źródło
Jak zwykle, używając
data-original-title
:HTML:
JavaScript:
Parametr html określa, w jaki sposób tekst podpowiedzi powinien zostać przekształcony w elementy DOM. Domyślnie kod HTML jest chroniony etykietami narzędzi, aby zapobiec atakom XSS. Załóżmy, że wyświetlasz nazwę użytkownika w swojej witrynie i pokazujesz małą biografię w podpowiedzi. Jeśli kod html nie zostanie pominięty, a użytkownik może samodzielnie edytować biografię, może wstrzyknąć złośliwy kod.
źródło
data-original-title
to miejsce, w którym bootstrap tymczasowo przechowuje,title
jeśli jest obecny.data-title
wystarczy, jeśli nie masz tytułu, na przykład a<a href="#" title="xxx">
Kolejne rozwiązanie, aby uniknąć wstawiania html do tytułu-danych jest utworzenie niezależnego elementu div z zawartością html podpowiedzi i odwołanie się do tego elementu div podczas tworzenia podpowiedzi:
W ten sposób możesz tworzyć złożone, czytelne treści html i aktywować dowolną liczbę podpowiedzi.
demo na żywo tutaj na codepen
źródło
html
Atrybut danych robi dokładnie to co mówi to robi w docs. Wypróbuj ten mały przykład, bez JavaScript (podzielony na linie dla wyjaśnienia):Prezentacje JSFiddle:
źródło
ustaw opcję "html" na true, jeśli chcesz, aby html był w podpowiedzi. Rzeczywisty html jest określany przez opcję „tytuł” (atrybut tytułu linku nie powinien być ustawiany)
Próbka na żywo
źródło