【发布时间】:2019-03-17 17:02:07
【问题描述】:
我正在使用 LeafletJS (https://leafletjs.com/reference-1.3.4.html) 和 Leaflet.markerclusterer (https://github.com/Leaflet/Leaflet.markercluster) 在我的网站上创建地图。我几乎完成了它的工作,但我无法弄清楚最后一部分。
我所做的是在视口中显示标记列表,如下所示:
然后,如果您单击底行中的其中一个,它将panTo() 正确的区域。
我遇到的问题是,如果(如您在我的示例中看到的)链接恰好位于此级别的集群中,那么您将看不到它。如何强迫它放大。
我需要的是一种一次放大一个步骤,直到它可见的方法。
window.VARS.markerCluster.eachLayer(function (layer) {
if (layer.options.linkid == linkid) {
console.dir(layer);
window.VARS.Map_Modal.panTo(layer.getLatLng());
}
});
这是我在谷歌地图上使用的一些代码来实现同样的目的,但显然它没有
var zoom = window.VARS.Google_Map_Modal.getZoom();
window.VARS.Google_Map_Modal.setCenter(window.VARS.markers[e.getAttribute('data-what')].getPosition());
var zoomInterval = setInterval(function() {
if(!window.VARS.markers[e.getAttribute('data-what')].map) {
zoom++
if (zoom < 15) {
window.VARS.Google_Map_Modal.setZoom(zoom++);
}
} else {
clearInterval(zoomInterval);
}
}, 300);
【问题讨论】:
标签: leaflet