我正在使用jquery插件tooltipster,每当我尝试获取悬停元素的属性时,这是一个svg形状,我得到了#undefined',例如' 34; $(this).attr(' id')",只要我只使用 $(this),我就会" [对象] [对象]" 。那么如何访问hover / clicked元素的属性,如id,title?谢谢
$(document).ready(function() {
$('circle').tooltipster({
content: $('<span><img src="my-image.png" /><br>' + $(this).attr('id') + '</span>')
});
});
答案 0 :(得分:2)
this
并不是您所期望的。
初始化插件需要传递给选项的元素特定数据的常见模式是在each
循环内初始化。
$('circle').each(function(index, element){
// now "this" is the element instance
$(this).tooltipster({
content: $('<span><img src="my-image.png" /><br>' + this.id + '</span>')
});
});
答案 1 :(得分:0)
这是你需要做的。
$(document).ready(function () {
$('circle').tooltipster({
content: $('<span><img src="my-image.png" /><br>' + $(this).attr('id') + '</span>')
});
});
保持string part
和javascript part
分开。
使用+
连接它,就像这样。
'<span><img src="my-image.png" /><br>'
+ $(this).attr('id')+ '</span>'