我正在使用这个插件http://iamceege.github.io/tooltipster/。
有可能知道 HTML 是否已经初始化了工具提示器?
我想知道,因为有时我需要更改工具提示的文本,为此,我需要销毁工具提示器,更改 HTML 对象的属性标题,然后再次初始化。像这样:
$(this).tooltipster('destroy').attr("title", data.fields[i].value).tooltipster();
我正在使用这个插件http://iamceege.github.io/tooltipster/。
有可能知道 HTML 是否已经初始化了工具提示器?
我想知道,因为有时我需要更改工具提示的文本,为此,我需要销毁工具提示器,更改 HTML 对象的属性标题,然后再次初始化。像这样:
$(this).tooltipster('destroy').attr("title", data.fields[i].value).tooltipster();
您可以使用 API:
检查元素是否已经有工具提示器:
$(...).hasClass("tooltipstered");
$(...).tooltipster('content', myNewContent);
接受的解决方案不适用于带有 tooltipster 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');
}
使用 .hasClass 检查它是否有 tooltipstered 类
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
}