leaflet限制地图拖动范围

工作中,有的地图服务,整体范围不是很大,导致访问服务,漫游拖动时,有把地图拖到地图范围外的现象。

为了方便用户交互体验,对地图服务的拖拽范围进行限制。


地图api: leaflet version1.0.3 

地图服务:arcgis10.2


主要代码如下:

引入leaflet js、css

<link rel="stylesheet" href="leaflet.css">
<script src="leaflet-src.js"></script>
<div id="map"></div>
<div id="coords"></div>
<script>
  var corner1 =  L.latLng(latitude, longitude), //设置左上角经纬度
  var corner2 = L.latLng(latitude, longitude),	//设置右下点经纬度
  var bounds = L.latLngBounds(corner1, corner2); //构建视图限制范围
  var map = L.map('map',{
	crs: L.CRS.EPSG3857, //wgs1984座标系
	maxBounds: bounds
  });
  map.setView([39.9, 116.39], 17); //设置地图中心点,zoom缩放级别

  L.esri.tiledMapLayer({
	url: "https://"+服务器ip+":6080/ArcGIS/rest/services/myMap/MapServer" //地图切片服务的访问地址	
	minZonm: 15,
	maxZomm: 21,
	...	//其他设置项
  }).addTo(map);

  map.on('mousemove',function(e){
	var $coords = document.getElementById("coords");
	$coords.innerHTML("经纬:"+e.latlng.lng.toFix(4)+",纬度"+e.latlng.lat.toFix(4));
  });
</script>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章