我有一个基于leaflet.js的地理信息系统网页:http://gisdev.clemson.edu/fireflies/。其中有一个WMS层(县),它作为最后一个层添加(在现有层的顶部)。需要发生的是,一旦有人双击地图(在任何县),那么地图应该缩放。但事实并非如此。
该地图将放大双击,如果空白的区域,如海洋被点击。我想我需要让县层来回应双击,但我找不到任何例子/参考。
下面是如何添加县WMS层:
var wmscounty = L.tileLayer.wms("<?php echo $geoserverwms_url; ?>", {
layers: '<?php echo $geoserverwms_layer_countypop; ?>',
format: 'image/png',
transparent: true,
version: '1.1.0',
attribution: "countypopulation"
}
);
wmscounty.addTo(map);如果WMS层由于某些原因无法响应双击,那么可以有某种通用地图事件侦听器,它至少会放大到双击区域?我认为WMS层可能不能工作,因为它是一些平铺图像?如果您有兴趣,它是由GeoServer生成的。
更新如果禁用状态层,则县层是可缩放的。所以我要么让州层不可点击,要么改变一些z阶?
谢谢!
发布于 2014-08-15 17:54:04
你能给图层本身增加一个缩放功能吗?我遇到了一个类似的问题,并通过在层定义中添加以下内容来解决这个问题:
onEachFeature: function (feature, layer) {
layer.on({
dblclick: function(e) {map.setView(e.latlng, map.getZoom() + 1);}
});
}在此发现:https://www.mapbox.com/mapbox.js/example/v1.0.0/zoom-to-double-click/
发布于 2014-04-18 20:03:18
不要紧。这听起来像是一个已知的问题:https://github.com/Leaflet/Leaflet/issues/2086
我通过GeoServer/WMS发布一个国家的形状文件来解决我的问题。
https://stackoverflow.com/questions/23141602
复制相似问题