在下面的示例中,我尝试根据所选选项类型的值更新地图类型。
不幸的是,似乎没有将maptype
加载到google.maps.MapTypeId
这令人沮丧。我已经尝试过它作为一个字符串以及var gmapsMapType = google.maps.MapTypeId.++maptype;
,我觉得我在这里遗漏了一些东西。
HTML
<select id="maptype" name="maptype">
<option selected="selected" value="RoadMap">Road Map</option>
<option value="Satellite">Satellite</option>
<option value="Hybrid">Hybrid</option>
<option value="Terrain">Terrain</option>
</select>
JQUERY
var maptype = $('#maptype>option:selected').val().toUpperCase();
var gmapsMapType = google.maps.MapTypeId.+maptype;
map.setMapTypeId(gmapsMapType);
非常感谢帮助。
答案 0 :(得分:3)
google.maps.MapTypeId[maptype];
答案 1 :(得分:0)
如果您选中 mapOptions
,则该对象包含以下属性。
center: N
mapTypeId: "roadmap" //lowercase
zoom: 8
mapTypeId是小写的,因此您可以像
一样使用function initialize() {
var maptype = $('#maptype>option:selected').val().toLowerCase();
var myLatlng = new google.maps.LatLng(43.565529, -80.197645);
var mapOptions = {
zoom: 8,
center: myLatlng,
mapTypeId: maptype
}
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
$("#maptype").change(function () {
initialize();
})
选中此JSFiddle