Javascript 在小屏幕上隐藏谷歌地图控件(手机等)

Javascript 在小屏幕上隐藏谷歌地图控件(手机等),javascript,java,google-maps,google-maps-api-3,Javascript,Java,Google Maps,Google Maps Api 3,如果屏幕小于一定数量的像素,如何隐藏地图类型选项(地图、卫星…)?这就是我的Google Maps API V3代码的样子: var mapOptions = { center: new google.maps.LatLng(initLat, initLong), zoom: level, scaleControl: true, mapTypeControl: true, mapTypeContr

如果屏幕小于一定数量的像素,如何隐藏地图类型选项(地图、卫星…)?这就是我的Google Maps API V3代码的样子:

var mapOptions = {
          center: new google.maps.LatLng(initLat, initLong),
          zoom: level,
          scaleControl: true,
          mapTypeControl: true,
          mapTypeControlOptions: {
              style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR,
              position: google.maps.ControlPosition.RIGHT_TOP
          },
          zoomControl: true,
          zoomControlOptions: {
              position: google.maps.ControlPosition.LEFT_TOP
          },
          mapTypeId: google.maps.MapTypeId.ROADMAP
        }

如您所见,
mapTypeControl
现在设置为
true
,如果屏幕宽度小于340px,我需要将其设置为false。另外还有
mapTypeControlOptions
,如果屏幕较小,则应隐藏该选项或其他内容。

您可以在创建
mapOptions
变量后检查浏览器宽度,如果它小于340px,您可以像普通javascript对象一样对其进行修改

var width = window.innerWidth;
if(width < 340){
    mapOptions.mapTypeControl = false;
    delete mapOptions.mapTypeControlOptions;
}
var-width=window.innerWidth;
如果(宽度<340){
mapOptions.mapTypeControl=false;
删除mapOptions.mapTypeControlOptions;
}
这里的主要问题是。 我会考虑使用<代码> $(window).WistHe())/c>jQuery方法。< /P> 编辑:我不建议再为此使用jQuery了。

查看以获取浏览器宽度。

在谷歌地图Javascript API中,如果地图小于200x200px,则默认情况下所有控件都将消失。可以通过显式地将控件设置为可见来修改此行为-但是,当前似乎无法修改隐藏控件的默认大小。


作为一个选项,您可以使用屏幕宽度小于340px的静态谷歌地图,如果用户需要完整的地图交互或控制,它只需链接到谷歌地图:

我也有同样的问题,只是不同的代码,所以您的答案只需稍加修改。请在这里查看我的问题: