获取Google Maps使用的当前ZoomControlStyle

时间:2012-03-28 04:33:42

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

有谁知道如何让地图缩放控件使用当前样式?

e.g。 google.maps.ZoomControlStyle。 SMALL ,或google.maps.ZoomControlStyle。 LARGE

您可以在mapOptions中指定开始样式,但如果Web浏览器调整得太小,或者正在触摸设备上查看地图,则地图会将样式更改为小。

我在www.topomap.co.nz上的缩放控件旁边显示自定义标签,如果控件样式变为SMALL,则会隐藏标签。

2 个答案:

答案 0 :(得分:0)

缩放控件会自动更改为以下大小,也许您可​​以将事件侦听器附加到onsize方法,并监视画布的大小并在分辨率更改后进行调整。 https://developers.google.com/maps/documentation/javascript/controls

尺寸为:

大于400x350px =大变焦

小于400x350px =小变焦(如果任一范围小于此数量,控件会调整)

答案 1 :(得分:0)

随着Google调整图形,可能需要在未来的Google Maps API版本中修改一些黑客攻击:

function isFullGoogleZoomControl() {
    return $("#map .gmnoprint img[src$='mapcontrols3d7.png']").length > 0;
}

注意:选择器需要jQuery。

更新以包含对带触摸屏的IE10的支持:

function isFullGoogleZoomControl() {
    return $("#map .gmnoprint img[src$='mapcontrols3d7.png']").length > 1;
}