1

我的情況是,我有大量的地理數據,其中很多地方的長度相同。如何使用MarkerCluster.js獲得谷歌地圖上當前羣集的標記

我想讓MarkerCluster的zoomOnClick處理程序保持活動狀態,但是當地圖保持放大並獲得最大縮放級別時,集羣中同一個長數據將不會分開(原因達到最大縮放級別21 )< - 這是有道理的。 所以,我想要做的就是當地圖獲得最大縮放級別時,我點擊clustermarker,我沒有放大,我想彈出一個信息窗口來顯示該羣集中所有標記的信息。

我可以單擊聚類標記並立即彈出一個信息窗口(通過修改MarkerCluster.js),但我不知道如何獲得那些標記在該聚類標記中,現在我只能得到所有標記返回...

有誰知道如何做到這一點或如何修改js文件? 或者也許有人也有相同的情況?

任何意見,將不勝感激,謝謝。

回答

2

要獲取當前(點擊)羣集,請訪問傳遞給clusterclick回調的參數。

該參數的方法getMarkers()將返回一個包含集羣中標記的數組,循環訪問數組並收集所需的數據。

注意:我不知道你使用哪個版本的markerclusterer.js,我的回答指的是this version
也沒有必要修改此版本,所有您所需的功能可能會達到沒有任何修改。

如何訪問標記短的例子:

google.maps.event.addListener(markerclustererObject,'clusterclick', 
    function(clickedCluster){ 
    console.log(clickedCluster.getMarkers()); 
}); 

+0

我用markercluster.js的同一版本和你在一起,和我不知道的事情是「我怎麼能得到當前我點擊羣集而不修改任何東西?「 有什麼方法可以調用?我沒有找到.. 和當我console.log中的getMarkers()方法在zoomOnClick()函數中,它打印所有羣集中的所有標記,而不是點擊它的羣集中的標記。 希望你能明白我的意思..我不擅長用英語解釋某種事情.. – Arvin

+0

在上面加了一個例子。 –

+0

非常感謝,我有兩個問題,一個是我看到markercluster.js中的'clusterclick'是不推薦的名字,是否適合使用這個? 另一個問題不同於這個,所以我會發佈一個新的。 – Arvin