How to disable double click zoom for d3.behavior.zoom?

You can disable the double-click behavior by removing the zoom behavior’s dblclick event listener. Looking at your code, you’ve assigned the zoom behavior to the SVG element. So you could say:

d3.select("svg").on("dblclick.zoom", null);

Or, together with where you register the zoom behavior:

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

You might also want to move the zoom behavior down to a G element rather than putting it on the root SVG element; I’m not sure it will work correctly on the root SVG, since the SVG element doesn’t support the transform attribute.

Leave a Comment