2013-07-02 93 views
0

我被困在一个非常简单的d.3问题中,有点与父母子女的关系。我试图创建一个场景,我将点击除父节点之外的所有节点在d3.js点击不是父节点的节点

我在想这样的事情吗?

.on(click, function(node){ 
    if(!= node.parent){ 
    window.location = d.url; 
    } 
}) 

这显然不工作。这是什么语法?

这就是返回的json的样子。这会给一个想法,为什么我看到的是父母,是什么孩子

functiongetNodes(){ 
    varinNodes={ 
     "name": "Test App", 
     "dept": "NYC", 
     "children": [ 
      { 
       "name": "HPD Data Feeds", 
       "dept": "Third Party", 
       "category": "API", 
       "size": 15, 
       "url": "http://nycpdev.localhost:8082/api/hpd-data-feeds" 
      }, 
      { 
       "name": "DOT Data Feeds", 
       "dept": "Third Party", 
       "category": "API", 
       "size": 15, 
       "url": "http://nycpdev.localhost:8082/api/dot-data-feeds" 
      }, 
      { 
       "name": "HPD Data Feeds", 
       "dept": "Third Party", 
       "category": "App", 
       "size": 15, 
       "url": "http://nycpdev.localhost:8082/api/hpd-data-feeds" 
      } 
     ], 
     "size": 20, 
     "url": "app/113" 
    };returninNodes; 
} 
+0

什么确定是否节点是否是父节点? –

+0

@ lars..just添加了json输出,它可以帮助你理解我是如何得到孩子的。其实“url”:“app/113”是某种垃圾。我不能删除它。所以基本上尽量不要点击父母 – soum

回答

0

你可以得到一个节点是否有子女或没有直接从JSON:

.on(click, function(node){ 
    if(!node.children){ 
    window.location = d.url; 
    } 
}) 
+0

@thanks lars。那很简单 :-) – soum