我一直在使用梦幻般的OpenStreetMap映射库leaflet.js一段时间了,我刚开始实现this clustering plugin。我已经用当前的项目工作得很好,该项目将不同的图层加载到地图上并转化为可点击的侧边栏。使用openPopup()与Leaflet.js +集群
唯一的问题是,如果我点击一个侧边栏项目,并且相应的标记位于群集对象中,则会出现错误。我解决这个通过了一个错误检查(使用try/catch语句)和缩放,以便该层是可见的,如下:
$('.item').click(function() {
currentlayer = this.id;
...
try {
geojson._layers[currentlayer].openPopup();
} catch(e) {
map.setView(geojson._layers[currentlayer]._latlng, 16);
geojson._layers[currentlayer].openPopup();
}
...
return false;
});
唯一的问题是,我在尝试运行openPopup时同样的错误()方法后,虽然,如果我再次点击侧边栏,弹出显示罚款。你可以看到它在这里的行动:
http://www2.lichfielddc.gov.uk/myarea/map2.php
任何想法?