我正在尝试使用 d3js 为圆形项目实现拖动和缩放事件处理程序。我已经为这两个事件添加了行为,如下所示
var circle = svg.append("circle")
.attr("fill", "green")
.attr("opacity", 0.6)
.attr("cx", 100)
.attr("cy", 100)
.attr("r", 13)
.call(d3.behavior.drag().on("drag", drag))
.call(d3.behavior.zoom().on("zoom", zoom));
不缩放对象,拖动工作正常。放大/缩小对象后,拖动不起作用,但所有包含 mousedown 的事件都被捕获为“缩放”事件。
有关完整源代码,请参阅http://jsfiddle.net/xTaDC/
似乎我不明白“d3.behavior”。https://github.com/mbostock/d3/blob/master/examples/mercator/mercator-zoom-constrained.html仅提供缩放处理程序并处理拖动和缩放。
我在这里做错了什么?