我正在使用MarkerClusterer。當我在同一個點上有兩個或多個標記時,API只顯示1個標記 - 最上面的一個標記。但不知何故,我想顯示所有的標記,因爲每個將打開不同的彈出窗口。 我已經搜索發現幾個解決方案,但似乎沒有工作 任何人都有類似的問題,並會共享一個解決方案?同一地點有多個標記 - MarkerClusterer
11
A
回答
23
終於搞定了。這是所有那些還沒有找到解決方案的人。下面的代碼將抵消對同一位置的標記:
在你createMarker
函數添加以下代碼:
//get array of markers currently in cluster
var allMarkers = namespace.mapParams.mapMarkersArray;
//final position for marker, could be updated if another marker already exists in same position
var finalLatLng = latlng;
//check to see if any of the existing markers match the latlng of the new marker
if (allMarkers.length != 0) {
for (i=0; i < allMarkers.length; i++) {
var existingMarker = allMarkers[i];
var pos = existingMarker.getPosition();
//if a marker already exists in the same position as this marker
if (latlng.equals(pos)) {
//update the position of the coincident marker by applying a small multipler to its coordinates
var newLat = latlng.lat() + (Math.random() -.5)/1500;// * (Math.random() * (max - min) + min);
var newLng = latlng.lng() + (Math.random() -.5)/1500;// * (Math.random() * (max - min) + min);
finalLatLng = new google.maps.LatLng(newLat,newLng);
}
}
}
現在更新與新的位置值每個標記您的google.maps.Marker
對象 - finalLatLng
。
var marker = new google.maps.Marker({
map: msf_namespace.mapParams.resultmap,
position: finalLatLng,
title: name,
icon: markericon
});
//add each generated marker to mapMarkersArray
namespace.mapParams.mapMarkersArray.push(marker);
相關問題
- 1. 谷歌地圖spiderfy功能 - 同一點有多個標記
- 2. MarkerClusterer xml標記
- 3. 在同一頁上有多個標記的2個地圖
- 4. Google MarkerClusterer不顯示標記
- 5. 刪除markerClusterer中的標記
- 6. MarkerClusterer不分組標記
- 7. 谷歌地圖MarkerClusterer沒有反映正確的標記數
- 8. 同一座標上的多個標記
- 9. MarkerClusterer中使用的標記標籤
- 10. Matplotlib,傳說有多個不同的標記用一個標籤
- 11. 谷歌地圖放大標記點擊多個標記
- 12. mouseover,mouseout並點擊谷歌地圖上的同一個標記
- 13. 具有多個標記的Google地圖
- 14. 具有多個標記的BlackBerry地圖
- 15. Android谷歌地圖在同一位置的多個標記
- 16. 熊貓Pyplot多個標記,同一行
- 17. 多個Google地圖標記
- 18. 結合谷歌地圖MarkerClusterer v3和視口標記管理
- 19. Google地圖(v3)「MarkerClusterer」:僅向可見標記添加圓圈
- 20. Google地圖MarkerClusterer v3標記返回集羣
- 21. markerclusterer點擊羣集以獲取子標記
- 22. 防止標記在MarkerClusterer中聚簇
- 23. 在同一個網頁中有多個javascript標記
- 24. GoogleMaps Markerclusterer InfoWindow相同位置,Cluster從標記中獲取內容
- 25. 同一類的多個錨標記。找到哪個錨標籤獲得點擊?
- 26. 地圖上的多個標記 - >如何檢測點擊了哪個標記?
- 27. 谷歌地圖MarkerClusterer要麼不工作或隱藏所有標記
- 28. 谷歌地圖 - 可點擊標記的標記羣集
- 29. markerclusterer:集羣圖標的錨點偏移
- 30. 谷歌地圖MarkerClusterer
的[集成Spiderfier JS成markerClusterer V3爆炸多標誌物完全相同的經度/緯度]可能重複(http://stackoverflow.com/questions/9726920/integrating-spiderfier-js-into-markerclusterer -v3-explode-multi-markers-with) – geocodezip
@geocodezip有沒有一種方法可以在不使用OverlappingMarkerSpiderfier的情況下工作,因爲它不能滿足需求。只用很小的空間顯示兩個標記就可以知道有兩個或更多的標記。謝謝。 – Grish
當然有。只需編碼就可以做到這一點。或者改變輸入數據,以避免重複。 – geocodezip