nvd3.js中的useInteractiveGuideline()问题

时间:2015-02-17 11:21:48

标签: d3.js nvd3.js

我有一个使用交互式指南的图表对象:

var chart = nv.models.lineChart();
chart.useInteractiveGuideline(true);
[...]

如果我以后(在活动期间说)通过以下方式清除图表:

d3.select("#{{id}} > *").remove();

然后我的问题是,当图表区域变为空白(根据需要)时,鼠标工具提示/交互指南仍然存在。

我的问题是:如何在删除图表的同时删除交互式指南?

2 个答案:

答案 0 :(得分:2)

在运行d3.select("#{{id}} > *").remove();之前,您可以运行

d3.select("#{{id}}")
  .on("mousemove", null)
  .on("mouseout", null)
  .on("dblclick", null)
  .on("click", null);

和d3将删除事件侦听器。

查看文档https://github.com/mbostock/d3/wiki/Selections#on

答案 1 :(得分:0)

d3.select只找到与选择器匹配的第一个元素。在这种情况下,该情节将是svg的情节而不是tooltip div 兄弟 svg

而是使用selectAll,它会找到svgdiv

d3.selectAll("#{{id}} > *").remove();