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 に答える