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));
オブジェクトをズームしなくても、ドラッグは正常に機能します。オブジェクトをズームイン/ズームアウトした後、ドラッグは機能しませんが、マウスダウンを含むすべてのイベントは「ズーム」イベントとしてキャッチされます。
完全なソースについては、 http://jsfiddle.net/xTaDC/を参照してください。
「d3.behavior」を理解していなかったようです。https://github.com/mbostock/d3/blob/master/examples/mercator/mercator-zoom-constrained.htmlは、ズーム ハンドラーのみを提供し、ドラッグとズームの両方を処理します。
ここで何が間違っていますか?