我有一个使用交互式指南的图表对象:
var chart = nv.models.lineChart();
chart.useInteractiveGuideline(true);
[...]
如果我以后(在活动期间说)通过以下方式清除图表:
d3.select("#{{id}} > *").remove();
然后我的问题是,当图表区域变为空白(根据需要)时,鼠标工具提示/交互指南仍然存在。
我的问题是:如何在删除图表的同时删除交互式指南?
答案 0 :(得分:2)
在运行d3.select("#{{id}} > *").remove();
之前,您可以运行
d3.select("#{{id}}")
.on("mousemove", null)
.on("mouseout", null)
.on("dblclick", null)
.on("click", null);
和d3将删除事件侦听器。
答案 1 :(得分:0)
d3.select
只找到与选择器匹配的第一个元素。在这种情况下,该情节将是svg
的情节而不是tooltip
div
兄弟 svg
。
而是使用selectAll
,它会找到svg
和div
:
d3.selectAll("#{{id}} > *").remove();