我是谷歌地图的新手。
我想显示谷歌地图与三种不同的地图类型(地图,卫星,混合)在地图上。
为此,我编写了如下代码
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(35.02, 111.02),
zoom: 8, mapTypeControlOptions: {
mapTypeIds: [google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.SATELLITE,google.maps.MapTypeId.HYBRID]
},
mapTypeId: google.maps.MapTypeId.ROADMAP,
};
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
但是使用上面的代码,我只能在地图中显示地图和卫星地图类型。第三个映射类型混合未显示在映射中。此外,当我点击类型卫星,我得到一个选项,如标签。所以我不想在卫星下面显示标签选项。
发布于 2013-01-31 19:47:45
Maps v3将始终将四个可用的mapTypeIds (混合、路线图、卫星、地形)压缩为两个按钮,并为每个按钮加上一个复选框。因此,卫星+混合将给你一个卫星按钮与标签复选框和路线图+地形将给你一个地图按钮与地形复选框。
请注意,只有当您将鼠标悬停在active按钮上时,才会显示该复选框,因此您必须处于地图模式才能看到按钮下的地形复选框,并且必须处于卫星模式才能看到标签复选框!
有趣的是,它实际上是a按钮,但只有当你添加混合到mapTypeIds 而不是添加卫星时,它才会变得可见。对于Terrain按钮也是如此,该按钮仅在将TERRAIN添加到列表时才可见,而不是路线图。
将mapTypeControlOptions.style切换到下拉框(DROPDOWN_MENU)而不是按钮(HORIZONTAL_BAR)也不会在结果下拉框中显示两个以上的项目。就像按钮一样,最多有两个下拉项,每个下拉项都有一个复选框。
发布于 2012-10-12 23:52:56
看起来您的地图上只能有4个MapTypeId
标签中的2个。
但您可以通过设置将地图强制转换为hybrid
map.setMapTypeId(google.maps.MapTypeId.HYBRID)
在任何时候,无论是用户单击链接、按钮、定时器,还是在代码末尾,等等。
检查这个jsfiddle:http://jsfiddle.net/RASG/vDLfs/
我刚刚在谷歌的一个群里发现了一些新东西。
当你将google.maps.MapTypeId.HYBRID
添加到mapTypeIds
时,你已经有了google.maps.MapTypeId.SATELLITE
,而不是同时显示两个选项,谷歌地图现在增加了一个名为“标签”的选项,当你将鼠标移到“卫星”上时。
其效果与v2中的“混合”选项相同。
检查更新后的jsfiddle:http://jsfiddle.net/RASG/vDLfs/6/
发布于 2013-12-10 07:49:30
将Google Earth地图类型添加到显示将禁用路线图下的地形选项和卫星下的混合选项。
https://stackoverflow.com/questions/12860629
复制相似问题