嗨,我更新我的问题,我也包括了一个工作jsfiddle,以清楚地看到我想做什么.... http://jsfiddle.net/elviz/Ge58Q/15/
nodeEnter.append("text")
.attr("dy", 3.5)
.attr("dx", 5.5)
.attr("x", barWidth +20)
.text(function(d) { return d.redirect_info; })
.on("click", function(d){
// using the value in d.redirect
//search for the node with item_id equal to d.redirect
//after finding that node input in update to draw
});
上面的代码我创建了一个文本并附加了一个onclick事件......如果文本是click,我想要的是使用值d。redirect查找item_id等于d的节点。redirect然后在update函数中输入数组来绘制树.......在我的示例中,如果文本是redirect_9_node_如果单击“simple”(简单),则会从根到节点简单地绘制节点;如果单击“redirect_13_node_alluring”(文本),则会从根到所有节点绘制树。请注意,请向右滚动,因为文本链接在矩形右侧20 px
1条答案
按热度按时间mw3dktmi1#
您可以隐藏节点的子节点,如下所示:
现在,如果您想显示节点的子节点,可以执行以下操作:
因此,在隐藏所有子节点后,您将显示节点
2
-cluster
和graph
的子节点:flar.children只包含一个节点
2
,其子节点将可见(见第37行和第47行http://jsfiddle.net/Ge58Q/10/)。在这种情况下,行flare.children.forEach(expandSingle)
可以替换为expandSingle(flare.children[0])
... flar.children[0]是节点2