1
我想爲傳單地圖上的(隨後)聚類圖標添加一個單擊事件(使用Leaflet.markercluster插件)。事件本身起作用,但警報總是會爲每個被點擊的圖標產生數組的最後一個元素。我看不出原因。聲明'marker'爲數組不會改變結果。Leaflet:將單擊事件添加到聚類圖標
map.clearLayers;
var marker = [];
var markers = L.markerClusterGroup({
disableClusteringAtZoom: 10,
spiderfyOnMaxZoom: true,
chunkedLoading: true
});
for (id in reclist) {
var posn = reclist[id]['info'][1];
var pose = reclist[id]['info'][2];
var title = reclist[id]['info'][0];
var mapicon = L.icon({iconUrl: 'url of icon');
marker[id] = new L.marker(new L.LatLng(posn, pose), {icon: mapicon})
.on('click', function(){alert(title)});
markers.addLayer(marker[id]);
}
map.addLayer(markers);
謝謝您的答覆。我最初在文檔中遵循了這個例子。問題是,每個標記都應該發送它的個人id(var title)給腳本。這就是爲什麼我將事件添加到循環中的標記而不是羣集中的原因。實際上,這相當於同一件事:兩個版本只發送數組的最後一個元素。如果將事件添加到羣集中,這是可以理解的,但是如果將事件添加到標記中,則不是這樣。 – Mike
非常感謝。這正是我所需要的。 – Mike