根据您所使用的缩放级别显示谷歌地图标记

时间:2011-05-30 21:22:09

标签: google-maps google-maps-api-3 google-maps-markers

我想知道是否可以将标记设置为以选定的缩放级别显示 Google Map 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 个答案:

答案 0 :(得分:2)

假设map是实例化的对象来管理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

答案 1 :(得分:2)

您可以将Marker Manager与API v3一起使用。 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在答案中所建议的那样。