2014-04-17 135 views
0

我有一个基于leaflet.js的GIS网页:http://gisdev.clemson.edu/fireflies/。在那里,有一个WMS图层(县)被添加为最后一层(在现有图层之上)。需要发生的事情是,一旦有人双击地图(在任何县),地图应该放大。但事实并非如此。leaflet.js 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); 

IF WMS层不能工作,因为某些原因对双击回应则可能存在某种普通地图事件侦听这将至少缩放到双击区域?我认为WMS图层可能不起作用,因为它是一些平铺图像?如果您好奇,它由GeoServer生成。

更新如果我禁用States层,Counties图层是可缩放的。所以不知何故,我要么使国家层不可点击或更改一些Z-订单?

谢谢!

回答

3

你可以向图层本身添加缩放功能吗?我碰到了类似的问题,并通过添加该层定义中解决了这个问题:

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/

+0

德鲁:看起来像一个巧妙的方法来获取变焦的工作,但我的问题是已经固定。仍然你的解决方案可以得到方便的一天。谢谢! – IrfanClemson