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

d3.js, javascript

Solution

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.

Problem

I do not want d3.behavior.zoom to add the ability to double click zoom on my graph. How can I disable this behavior? Here is a JSFiddle with the unwanted behavior. I have tried the following without any luck. ``` d3.behavior.zoom.dblclick = function() {}; ```

Original source

Related problems