2011-05-30 58 views
3

我不知道是否有可能設置標記是在選定的縮放級別
谷歌地圖API V3可見。
我覺得在使用「標記管理器」的API的v2中是可行的,但無法找到最新的API。顯示谷歌地圖標記取決於你縮放級別是什麼在

實施例:
標記-1 - >(MAX_ZOOM:10,min_zoom:5)//將縮放級別內顯示5-10
標記-2 - >(MAX_ZOOM:15,min_zoom:10) //將在縮放級別內顯示10-15

當我開發一個jQuery插件時,我只想使用原始API而不使用附加組件。

在此先感謝!

回答

2

假設地圖實例化管理GMAP的對象,我會做這樣的事情:

var zoomLevel = map.getZoom(); 
if (zoomLevel>=5 && zoomLevel<=10) { 
    // call the setMarker function for the marker1 
} else if (zoomLevel>10 && zoomLevel<=15) { 
    // call the setMarker function for the marker2 
} 

也許ü要處理程序中的縮放變化情況,如果是這樣看的:http://code.google.com/apis/maps/documentation/javascript/events.html

+0

這個awnser給了我一個提示該怎麼做。謝謝! – Maartin 2011-05-30 22:00:49

+0

不客氣,很高興這幫助了你。 :) – lucke84 2011-06-01 23:16:55

1

您可以在API v3中使用Marker Manager。 http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markermanager/中的示例使用最新的Maps API,它們看起來很好。

對於其他選項,如Marker Clusterer和Fusion Tables,請參閱http://code.google.com/apis/maps/articles/toomanymarkers.html

您也可以通過檢查縮放級別並根據它在地圖中添加/刪除標記,如@ lucke84在其答案中所建議的那樣。

+0

正如我所說,沒有插件^^。 – Maartin 2011-05-30 21:59:18

+0

我推斷你對Marker Manager做了一個例外,因爲它在問題中作爲v2中的一個可行選項被特別提及。值得一提的是:Fusion Tables不是附加組件,鏈接中的其他一些項目是一般性的方法,而不是特定的庫。但底線是這聽起來像你從@ lucke84得到你的答案,所以這是很好,祝你好運! – Trott 2011-05-30 22:09:10

相關問題