Jquery 根据元素的内容在Tooltipster中生成工具提示
我使用一个库来生成工具提示,并使用它们的简单示例作为基础。尽管如此,我需要修改它,而不是像在他们的示例中看到的那样查询静态“”,它将改为“”。例如,如果我的HTML中有一本Jquery 根据元素的内容在Tooltipster中生成工具提示,jquery,ajax,tooltip,tooltipster,Jquery,Ajax,Tooltip,Tooltipster,我使用一个库来生成工具提示,并使用它们的简单示例作为基础。尽管如此,我需要修改它,而不是像在他们的示例中看到的那样查询静态“”,它将改为“”。例如,如果我的HTML中有一本教科书,弹出窗口的内容链接将是“” 我已经成功地重新调整了示例的用途,以便在每个上激活,但我无法理解如何将的内部HTML内容带到该示例中 所以我要找的是一行,它用元素的内容填充一个变量,我可以在以后附加到$.get。。。函数(数据)请求。您可以使用jquery中的html()函数提取内部html。此外,还可以使用param()
教科书
,弹出窗口的内容链接将是“”
我已经成功地重新调整了示例的用途,以便在每个
上激活,但我无法理解如何将
的内部HTML内容带到该示例中
所以我要找的是一行,它用元素的内容填充一个变量,我可以在以后附加到$.get。。。函数(数据)请求。您可以使用
jquery
中的html()
函数提取内部html。此外,还可以使用param()
对提取的html进行编码
var param = "?" + $.param({ id: origin.html() });
完整示例(使用Tooltipster 3.3.0和jQuery 1.10
):
工具提示器版本4
:
$('.tooltip').tooltipster({
content: 'Loading...',
functionBefore: function(instance, helper) {
var $origin = $(helper.origin);
var param = "?" + $.param({ id: $origin.html() });
if ($origin.data('loaded') !== true) {
$.get('example.com/ajax.php' + param, function(data) {
instance.content(data.id);
$origin.data('loaded', true);
});
}
}
});
HTML:
一些文本测试
只是复制粘贴示例I get TypeError:origin.html不是一个函数。(在“origin.html()”中,“origin.html”未定义)它包含span
:此处一些文本测试的内容。此函数不是Tooltipster的一部分,而是在jquery库中实现的param
包含查询的id
参数。最后,您必须调整查询url,这是我在jsfiddle
中的示例。您使用的是同一版本的Tooltipster吗?我用了一个旧的(3.3.0)-它与4.0不同。在这里,您必须修改tooltipster主页上的示例。是的,我理解所有这些。但是,我得到了上面提供的错误(刚刚编辑的注释),它似乎与span元素的内容或param变量的内容无关。我再次收到的消息是“TypeError:origin.html不是函数(在'origin.html()'中,'origin.html'未定义)”,因此它似乎与Tooltipster无关。我使用的是Tooltipster的最新版本。
$('.tooltip').tooltipster({
content: 'Loading...',
functionBefore: function(instance, helper) {
var $origin = $(helper.origin);
var param = "?" + $.param({ id: $origin.html() });
if ($origin.data('loaded') !== true) {
$.get('example.com/ajax.php' + param, function(data) {
instance.content(data.id);
$origin.data('loaded', true);
});
}
}
});
<span class="tooltip" title="This is my span's tooltip message!">Some text test</span>