我正在使用Christophe Viau的d3.js工具提示助手:
https://gist.github.com/milroc/2975255
但也希望在鼠标悬停时触发其他事件,而不仅仅是工具提示,特别是我想修改圆圈本身,所以我试过了:
var circle = svg.append("svg:g").selectAll("circle")
.data(force.nodes())
.enter().append("svg:circle")
.call(d3.helper.tooltip(function(d,i){return d.name;}))
.attr("r", 12)
.call(force.drag)
.on("mouseover", function(){d3.select(this).style("fill", "blue");});
要么一个人独立工作,而不是一起工作。我尝试编辑工具提示助手,但是我遇到了错误。我在工具提示助手上添加了这些变体:
var newvar = function(d,i) {d3.select(this).style("fill", "blue");}
var newvar = function(selection) {d3.select(this).style("fill", "blue");}
有谁知道说这个的正确方法是什么?
答案 0 :(得分:4)
我更新了我10个月的代码;)http://bl.ocks.org/biovisualize/2973775
您需要的部分是event namespacing,因此您可以将多个事件应用于同一个元素而不会发生冲突:
.on('mousemove.tooltip', ...