基于条件d3.js的工具提示可见性

时间:2015-07-03 05:18:56

标签: javascript d3.js tooltip mouseover

我需要在选中复选框值时显示移动悬停时图表节点的工具提示。否则它不应该显示。

我尝试了如下代码。但它不起作用。

.on('mouseover', function (d) {
  if(document.getElementById("chkEnableDisableNames").checked == true){
    d.show ;
}
else { 
  return null;
}})

jsfiddle

1 个答案:

答案 0 :(得分:0)

注意:我将引用您的jsFiddle示例,因为其中的代码与您在问题中发布的代码段不同。

代码有几个问题:

1)您正在使用自定义功能showhidefunc()来调节笔尖的显示。该函数在您的悬停事件范围之外,因此不会继承它的局部变量,因此您需要通过参数传递它:

.on('mouseover', function(d) {
  showhidefunc(d); 
}

// ...

function showhidefunc(d) {
  // ...
}

2)tip.show()不是属性,而是需要在参数中传递的方法,其中节点显示提示以便工作:

tip.show(d);

除此之外,您的代码看起来还不错。

以上是您更新(工作)的小提琴,如上所述: http://jsfiddle.net/f8R3M/39/