我有一個地圖,它有基於我的數據庫中的值編程放置在它上面的標記。當你點擊一個標記時,它將轉到該位置的詳細頁面。Google Maps API:如何判斷某個標記是否被另一個標記隱藏?
我的問題是,當地圖充分縮小時,彼此足夠接近的標記顯示爲單個標記,實際上隱藏了一些標記。 有沒有辦法通過編程來判斷一個標記是否是一組標記的一部分,或者被其他標記隱藏/遮蓋?
我的目的是爲每個動態生成的標記做這樣的事情:
marker.addListener('click', function() {
// if marker is not hiding any other markers
window.location.href = markerURL;
// else if it is hiding markers/is part of a group of markers
map.setZoom(15);
map.setCenter(marker.getPosition());
});
我已經檢查了Marker API documentation,但似乎無法找到任何有用的方法。 getClickable
和getVisible
在我的情況下總是返回true
,無論標記是否被另一個標記覆蓋。有什麼建議麼?謝謝!
您可能需要使用[MarkerClusterer](https://github.com/googlemaps/js-marker-clusterer),以便在多個標記羣集時顯而易見。 – geocodezip
@geocodezip感謝您的建議。我考慮過這個,但希望有一個更簡單的方法。我不需要對聚類有任何控制,我只想知道它是否發生了。如果我找不到更好的解決方案,我可能會最終使用該庫。 – elethan
沒有什麼內置API來做這樣的事情,我懷疑你提出的任何算法都不會像標記羣集器 – geocodezip