Search code examples
javascriptjqueryhtmltooltipster

Tooltipster html content


I don't know for what reason but in tooltipster html content won't display. I encoded the html, added the option in the script but still a string.

$(document).ready(function() {
  $('.tooltip').tooltipster({
    contentAsHTML: true,
    interactive: true,
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://iamceege.github.io/tooltipster/js/jquery.tooltipster.js"></script>
<link rel="stylesheet" href="http://iamceege.github.io/tooltipster/css/tooltipster.css">
<span title="&amp;lt;img src=&amp;quot;my-image.png&amp;quot; /&amp;gt; &amp;lt;strong&amp;gt; This text is in bold case !&amp;lt;/strong&amp;gt;" class="tooltip">Why is this not working</span>


Solution

  • Your title attribute has a bunch of instances of &amp; where it should just be &.

    For example, you have:

    &amp;lt;img src=&amp;quot;my-image.png&amp;quot; /&amp;gt;
    

    When it should be:

    &lt;img src=&quot;my-image.png&quot; /&gt;
    

    I'm not sure how you generated your title attribute, it looks like you may have escaped the string twice.


    Working snippet:

    $(document).ready(function() {
      $('.tooltip').tooltipster({
        contentAsHTML: true,
        interactive: true,
      });
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="http://iamceege.github.io/tooltipster/js/jquery.tooltipster.js"></script>
    <link rel="stylesheet" href="http://iamceege.github.io/tooltipster/css/tooltipster.css">
    <span class="tooltip" title="&lt;img src=&quot;my-image.png&quot; /&gt; &lt;strong&gt; This text is in bold case !&lt;/strong&gt;">This is working</span>