0

以下の例では、選択したオプション タイプの値に応じてマップ タイプを更新しようとしています。

残念ながら、イライラ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>

Jクエリ

var maptype = $('#maptype>option:selected').val().toUpperCase();
var gmapsMapType = google.maps.MapTypeId.+maptype;
map.setMapTypeId(gmapsMapType);

助けていただければ幸いです。

4

2 に答える 2

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を確認してください

于 2013-11-05T09:50:22.843 に答える