我疯狂地试图理解为什么我可以在常规HTML元素上显示工具提示,而不是在D3生成的SVG上显示:http://jsfiddle.net/nachocab/eQmYX/5/
我做错了什么?
$(document).ready(function () {
$("a").tooltip({
'placement': 'bottom'
}); // this works
$("my_circle").tooltip({
'placement': 'bottom'
}); // this does not work
});
答案 0 :(得分:55)
问题在于Bootstrap v2.2.2生成的工具提示是<div>
,它被插入<svg>
内部,导致浏览器无法呈现它。
我最终使用Bootstrap Tooltip的最新开发版本,它添加了一个新参数来确定工具提示的容器。现在我可以做:
$(".my_circle").tooltip({
'container': 'body',
'placement': 'bottom'
}); // this works!
编辑 - 一年后
为了记录,我删除了jQuery要求,现在我正在使用Justin Palmer的优秀d3-tip。
答案 1 :(得分:4)
使用d3-bootstrap库。 该库将为您提供与D3.js兼容的警报,弹出窗口和工具提示功能 您可以将以下代码添加到jsFiddle。
将此添加到您的头部。
<script src="https://github.com/shawnbot/d3-bootstrap/blob/master/d3-bootstrap.js"/>
在代码部分添加此内容。
d3.selectAll(".my_circle")
.call( d3.tooltip().placement("right") );