Javascript D3取下';缩放';完全地

Javascript D3取下';缩放';完全地,javascript,svg,d3.js,zooming,Javascript,Svg,D3.js,Zooming,我正在尝试从svg中完全删除缩放 zoom = d3.behavior.zoom() .x(userNodesScaleX) .y(userNodesScaleY) .on("zoom", zoomed); userMapSvg.call(zoom); 这在SVG的顶部添加了一个“rect.background”,防止鼠标事件到达SVG中的其他元素 所以我决定完全取消缩放。移除事件,移除该rect。我该怎么做 当前代码为 removeZoom = d3.behavior

我正在尝试从svg中完全删除缩放

zoom = d3.behavior.zoom()
    .x(userNodesScaleX)
    .y(userNodesScaleY)
    .on("zoom", zoomed);
userMapSvg.call(zoom);
这在SVG的顶部添加了一个“rect.background”,防止鼠标事件到达SVG中的其他元素

所以我决定完全取消缩放。移除事件,移除该rect。我该怎么做

当前代码为

removeZoom = d3.behavior.zoom()
    .on("zoom", null);

这不管用。它仅切换事件。

要停止将来对页面进行的任何缩放,请删除侦听器:

zoom.on("zoom", null)
要撤消以前的缩放变换,请执行以下操作:

zoom.scale(1).translate([0,0]).event(userMapSvg)

bl.OCK顶部的按钮显示这两种行为

如果两者都不是你想要的,那么发布一个问题的工作示例将非常有帮助。您可能还需要查看。请尝试

userMapSvg.on(".zoom", null);

我发现的另一种工作方式是将缩放的范围和
.extent
translateExtent
设置为宽度和高度元素(从而完全禁用缩放)。当然要将
scaleExtent
设置为[1,1]。

恐怕不行,@Adam。我正是按照问题中提到的那样使用它。NAZIK&rink.attendant-“zoom.on(“zoom”,null)”是对这个问题的回答,请参阅链接以了解它的作用示例。