我正在尝试Leaflet,显示器看起来像谷歌地图,但我发现很多方法都无法满足我的要求。网上有什么办法,手机会显示以下内容吗?
显示不良:
第一次输入时,可以将其拖动到屏幕外部。
良好的展示:
第一次进入时是高度全屏,无法拖动。
答案 0 :(得分:0)
查看Leaflet documentation初始化地图。您可以传递几个可以执行所需操作的选项:
.libs
设置var world = new L.LatLngBounds([[90,-180],[-90,180]]);
var map = L.map('map', {
minZoom:2,
maxBounds: world,
maxBoundsViscosity: 1,
}).setView([0,0], 0);
会阻止用户缩小到目前为止地图的顶部和底部都可见(并覆盖传递给minZoom
的缩放值)。您可能需要根据屏幕高度计算适当的值,以及在应用程序中显示多少有用的世界。就其本身而言,这仍然可以让用户平移地图的边缘。
设置setView()
将视图限制为一组特定的坐标(上例中的整个世界)。您还必须设置maxBounds
以阻止用户将地图平移超出这些限制。
如果您真的不希望用户能够平移地图,您也可以设置maxBoundsViscosity
。这仍然允许您使用dragging: false
方法平移地图。