我正在使用D3.js构建一个树,我想要做的是添加两个按钮,全部展开和全部折叠到这样的页面顶部.
当我单击"全部展开"时,所有节点都应该展开.当我单击"全部折叠"时,所有节点都应折叠到根元素.
这是我目前的代码http://bl.ocks.org/anonymous/ab8d7f85cca6f745a107
但问题是,它不起作用.有人可以建议如何使它工作?
Gil*_*sha 19
试试这个代码.这是工作的JsFiddle.
function expand(d){
var children = (d.children)?d.children:d._children;
if (d._children) {
d.children = d._children;
d._children = null;
}
if(children)
children.forEach(expand);
}
function expandAll(){
expand(root);
update(root);
}
function collapseAll(){
root.children.forEach(collapse);
collapse(root);
update(root);
}
Run Code Online (Sandbox Code Playgroud)