1

我有一棵带有点击事件侦听器的树。我想将我的树重新集中在用户单击的任何节点上。

如何在点击事件中获取树节点的实际 x / y 值?

4

1 回答 1

3

要获得 x/y,您必须通过已应用的任何翻译将节点翻译回来:

http://jsfiddle.net/WLaVU显示了您想要的工作示例。

// click event handler 
function click_handler(d)
{
  // these dudes must be smooshed back through the same transform
  var x = xs(d);
  var y = ys(d);

  // normalize for width/height
  var new_x = (-x + (width / 2));
  var new_y = (-y + (height / 2));

  // move the main container g
  svg.attr("transform", "translate(" + new_x + "," + new_y + ")");
}
于 2013-09-20T21:04:27.080 回答