[英]How to ignore d3.js zoom behavior if scale is maxed/minimal?
给定具有d3.behavior.zoom
且确定的scaleExtent
的SVG,它会随着鼠标滚轮事件而缩放:
如何忽略缩放事件并使鼠标滚轮事件正常进行(因此使页面上下滚动?)
不要在评论中清除,但是类似或类似的内容可能会起作用:
JS:
伪放大
var zoomEnd = false;
if(zoom < min ){ zoom = min, var zoomEnd = true; }
if(zoom > max){ zoom = max, var zoomEnd = true; }
检查zoomEnd = true(即:缩放处于最小或最大缩放):
if(zoomEnd =true)
{
d3.select('svg').classed('scroll', true)
} else{
d3.select('svg').classed('scroll', false))
}
CSS:
.scroll{
overflow: scroll;
}
记住,您必须检查每一帧,因此在刻度/更新功能中,它总是检查缩放是否超出范围,从而带来滚动功能
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.