簡體   English   中英

如果比例最大/最小,如何忽略d3.js縮放行為?

[英]How to ignore d3.js zoom behavior if scale is maxed/minimal?

給定具有d3.behavior.zoom且確定的scaleExtent的SVG,它會隨着鼠標滾輪事件而縮放:

  • 如果比例尺最小(即SVG完全縮小),或者
  • 如果縮放比例最大(即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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM