Javascript 在小屏幕上隐藏谷歌地图控件(手机等)
如果屏幕小于一定数量的像素,如何隐藏地图类型选项(地图、卫星…)?这就是我的Google Maps API V3代码的样子: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
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的静态谷歌地图,如果用户需要完整的地图交互或控制,它只需链接到谷歌地图:我也有同样的问题,只是不同的代码,所以您的答案只需稍加修改。请在这里查看我的问题: