[工具提示插件]- 知道 div 是否已经有工具提示

[Tooltipster Plugin]- Know if div already have tooltipster

我正在使用这个插件 http://iamceege.github.io/tooltipster/

可能知道 HTML 是否已经初始化了工具提示?

我想知道,因为有时我需要更改工具提示的文本,为此,我需要销毁工具提示,更改 HTML object 的属性标题,以及再次初始化。像这样:

$(this).tooltipster('destroy').attr("title", data.fields[i].value).tooltipster();

使用 .hasClass 检查它是否有工具提示 class

var divToCheck = null; //FIXME: update to whatever query you use to get the div you're checking
if (divToCheck.hasClass('tooltipstered')) {
  //TODO: update your title
}

您可以使用 API:

检查元素是否已经有工具提示:

$(...).hasClass("tooltipstered");

$(...).tooltipster('content', myNewContent);

已接受的解决方案不适用于带有工具提示 v4.1.6 的 SVG 元素。 我是这样解决的:

if ($.tooltipster.instances($(node)).length == 0) {
    //it is NOT tooltipstered
}
else {
    //it is tooltipstered
}

您可以检查它是否需要实例化或简单地启用:

if (!$(id).hasClass("tooltipstered")) {
    $(id).tooltipster({
     position: 'top-left',
     contentAsHTML: 'true',
     theme: '.tooltipster-default',
     animation: 'grow'
    });
} else {
    $(id).tooltipster('enable');
}

确保在禁用它之前检查它是否已实例化:

if ($(id).hasClass("tooltipstered")) {
   $(id).tooltipster('disable');
}