【发布时间】:2014-03-04 00:35:38
【问题描述】:
我是 d3.js 新手,正在使用 treemap example。原始示例在将鼠标悬停在特定部分时显示工具提示。我想改用qtip2 工具提示。
在 d3.js 示例中,以下行用于添加默认工具提示,即通过设置 title 属性:
g.append("rect")
.attr("class", "parent")
.call(rect)
.append("title")
.text(function(d) { return "total: " + formatNumber(d.value); });
qtip2 网站建议使用 (jQuery) 行
$('[title]').qtip();
会将默认工具提示替换为 qtip2 变体。但是,它不会出现在任何地方。我应该这样称呼它吗?
我能够通过向 rect 元素添加一个类来生成一个 qtip2 工具提示,就像这样
g.append("rect")
.attr("class", "parent")
.classed({'QTIP2': true})
.call(rect)
.append("title")
.text(function(d) { return "total: " + formatNumber(d.value); });
紧随其后
$('rect.QTIP2').qtip({
content: 'Total number of hits:' + "some value",
position: {my: 'center', at: 'center'},
style: {width: 75, classes: 'qtip-dark qtip-shadow'},
show: { effect: function(offset) {$(this).fadeIn(500);}}
});
但是,我不知道如何通过 d3 中使用的实际 d 值更改“some value”字符串。 我对 d3.select(this) 、 datum() 和 __data__ 属性有些熟悉,但我无法让它工作。 $('rect.QTIP2').text() 行也产生了一些结果,但是,这给出了所有矩形的值,而不仅仅是你悬停的那个。
非常感谢任何帮助!
【问题讨论】:
标签: jquery d3.js tooltip treemap qtip2