我已经渲染了启用平移和缩放的 d3 地图,但是当在桌面或移动设备上向下滚动视口时,窗口会卡在地图中缩放。
有没有办法在窗口滚动时暂时禁用 d3.zoom?
我已经看到了使用按钮切换缩放/平移的方法,如下所示: http: //jsfiddle.net/0xncswrk/,但我想知道是否可以无需添加按钮。这是我当前的缩放逻辑。
谢谢!
this.zoom = d3.zoom()
.scaleExtent([1, 8])
.on('zoom', () => {
this.svg.attr('transform', d3.event.transform);
});
this.svg = d3.select(this.el).append('svg')
.attr('width', '100%')
.attr('height', this.height)
.attr('class', 'bubble-map__svg-us')
.call(this.zoom)
.append('g');
Run Code Online (Sandbox Code Playgroud)