请注意,目前没有专门的API可以将删除的元素添加回文档;但是,您可以将函数传递给selection.append或selection.insert以重新添加元素。
https://github.com/mbostock/d3/wiki/Selections
传递函数是什么意思?我不确定如何实施这个。我尝试传递一个函数,将删除的div附加回父级,但是没有用。有什么想法吗?
这是d3中的一个相对较新的功能。
答案 0 :(得分:4)
a function that returns the DOM element to append
所以你可以简单地做一些事情:
d3.select("body").append(function() {
return document.createElement("div");
});
而不是简单地使用字符串名称
d3.select("body").append("div");
当您使用d3选择器时,请记住它们不是单个元素。他们是一组群体。因此,如果你说:
var divs = d3.select("div").remove(); // actually a multidimensional array
var firstElement = divs[0][0]; // this can be appended by returning it
Mike的相关文字是:One nuance is that selections are grouped: rather than a one-dimensional array, each selection is an array of arrays of elements
这是一个简单的工作fiddle to show a very basic example.