0

从 d3.js 气泡示例中,我添加了缩放 + 平移功能。现在我想让用户在桌面和触摸屏上选择气泡。dblclick 和 touchstart 似乎对此是一致的。

我知道 d3 提供了一种从 .zoom 取消事件的方法,但随后它被禁用并且不执行任何操作。

.call(d3.behavior.zoom().on("zoom", zoom)).on("dblclick", null);

链接:http ://bl.ocks.org/4163494

我有上面的作品,但你会注意到 dblclick 一开始不会缩放,但如果你引起另一个缩放事件,它就会显示出来。我正在寻找正确的方法来做到这一点。

4

1 回答 1

0

为了修复,我离开了

.on("zoom", redraw)

函数,但将 dblclick 向下移动到圆形、文本和 tspan 元素。从那里他们调用一个函数,该函数首先停止传播,然后选择圆。

http://jsfiddle.net/nnzS9/

于 2012-11-29T06:12:10.150 回答