【问题标题】:Leaflet - Is it possible to prevent a web map from changing the zoom of the map when it is first loaded?Leaflet - 是否可以防止 web 地图在首次加载时更改地图的缩放比例?
【发布时间】:2021-11-11 21:54:10
【问题描述】:

当通过 ID 加载 web 地图时,部分响应有一个范围,传单然后调用 fitBounds 最终缩放地图,覆盖设置的默认缩放。

有没有办法防止这种缩放?我可以覆盖它,但地图会放大然后再次缩小,这是不可取的。

【问题讨论】:

标签: leaflet arcgis


【解决方案1】:

我假设您可以更改使用 fitBounds 的代码,并且您希望阻止该操作更改缩放,因此仅更改地图视图的(中心)坐标。

在这种情况下,当您获得响应时,您可以简单地计算边界中心和panTo 它,而不是让地图“适合”响应边界:

https://leafletjs.com/reference-1.7.1.html#map-panto

将地图平移到给定的中心。

const responseCenter = responseBounds.getCenter();
map.panTo(responseCenter);

【讨论】:

  • 不,我无法更改代码。该请求是使用esri-leaflet-webmap 发出的,一旦它收到对网络地图请求的响应,它就会调用fitBounds 并且Leaflet 会进行缩放。我尝试使用 zoomstart 事件将缩放重置为默认值,然后再根据范围进行缩放,但它似乎不起作用,而是使用我在下次启动缩放时提供的缩放值。
  • 可以先执行一些代码吗?
猜你喜欢
  • 1970-01-01
  • 2011-07-11
  • 1970-01-01
  • 1970-01-01
  • 2015-03-15
  • 2018-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多