3

私はGoogleマップにかなり慣れていません。私がやろうとしているのは、HTMLメニューがクリックされたときにポイントを中心とするマップを設定することです。

コントロールがマップの外にある場合、イベントリスナーは必要ないと言っているのは正しいですか?

これは、ヘッドセクションからの私のコードです:

 <script type="text/javascript">
        function init() {
            var myLatlng = new google.maps.LatLng(53.53562,-1.05642);
            var myOptions = {
                zoom: 8,
                center: myLatlng,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            }
            //draw the map
            var map = new google.maps.Map(document.getElementById("map"), myOptions);

            //set up the marker
            var marker = new google.maps.Marker({
                position: myLatlng,
                map: map,
            }); 
        }

        function resetMap(lat,long) {
                var latlong = lat+","+long;
                var newPos = new google.maps.LatLng(latlong)({
                setCenter: latlong,
                map: map,
                zoom:15,
            })

            //add a marker
            var marker = new google.maps.Marker({
                position: myLatlng,
                map: map,
                title:"New marker",
            })
        }   
    </script>

HTMLは次のようになります。

<body onLoad="init()">
    <div id="selecter">
        <select>
            <option onClick="resetMap(53.39433,-1.25754);">Thurcroft</option>
            <option onClick="resetMap(53.41615,-1.27833);">Wickersley</option>
            <option onClick="resetMap(53.47929,-1.14828);">M18/A1</option>
            <option onClick="resetMap(53.47802,-1.06633);">Rossington</option>
            <option onClick="resetMap(53.53562,-1.05642);">Armthorpe</option>
            <option onClick="resetMap(53.5914,-0.98797);">J5 M180</option>
            <option onClick="resetMap(53.61159,-0.96308);">Thorne</option>
            <option onClick="resetMap(53.62769,-0.95181);">Moorends</option>
        </select>
    </div>
    <div id="map">
    </div>
</body>

...しかし、メニューにアクセスしても何も起こりません。誰かが私を正しい方向に向けることができますか?すべての提案は感謝しています!

4

2 に答える 2

0

onclickオプションに関数を入れることはできません。次onchangeのように select タグに関数を入れる必要があります。

<select onchange="resetMap('53.39433', '-1.25754');">
    <option>Thurcroft</option>
    <option>Wickersley</option>
</select>

また、ファイルにマップ URL が含まれていることを確認してください。

于 2012-06-18T00:50:45.943 に答える