D3删除退出返回的元素的父元素

时间:2013-12-27 21:43:27

标签: d3.js

以下代码将删除旧路径:

var join = svg.selectAll('path').data(data, function (d) {
  return d.label;
});
join.exit().remove();

我要删除的每个path元素都包含在g元素中,其中包含我要删除的所有内容。

<g class="item">
  <text class="line-text">Label</text>
  <path class="line" d="..." style="stroke: #2ca02c;"></path>
</g>

所以我真正想要做的就是删除g元素,但调用.remove()只会删除path元素。如何删除整个g元素?

1 个答案:

答案 0 :(得分:2)

执行此操作的正确方法是将数据绑定到g元素,以便对其进行操作。做你要求的快速而肮脏的方法如下。

join.exit().each(function() { d3.select(this.parentNode).remove(); });