3

最新バージョンのGMaps.jsを使用して、コードで設定したPINアイコンを変更するにはどうすればよいですか?

これが私がやろうとしていることです:

$('input[name="Address"]').blur(function () {
    GMaps.geocode({
        address: $('input[name="Address"]').val(),
        callback: function (results, status) {
            if (status == 'OK') {
                var latlng = results[0].geometry.location;
                map.setCenter(latlng.lat(), latlng.lng());
                map.addMarker({
                    lat: latlng.lat(),
                    lng: latlng.lng(),
                    icon: {
                        image: "http://i.imgur.com/12312.png"
                    }
                });
            }
        }
    });
});

このスクリプトを実行すると、Firebugのコンソールで次のエラーが発生します。

"NetworkError: 404 Not Found - http://localhost:17680/Account/undefined"

"NetworkError: 404 Not Found - http://localhost:17680/Account/undefined"

コード内のどこでも呼び出したことがないので、なぜそのURLをHTTPGETしようとしているのかわかりません。

4

1 に答える 1

5

マーカーのアイコンを変更するのは非常に簡単です。

ドキュメントを読むと、次のように書かれていることに注意してください。

また、createMarker は、google.maps.MarkerOptions で定義された任意のオプションと、google.maps.Marker ('Events' セクション) で定義された任意のマーカー イベントを受け入れます。

Google のドキュメントを読んだら、次のように電話するだけです。

icon: "some-url-here"

私の場合は次のとおりでした。

$('input[name="Address"]').blur(function () {
    GMaps.geocode({
        address: $('input[name="Address"]').val(),
        callback: function (results, status) {
            if (status == 'OK') {
                var latlng = results[0].geometry.location;
                map.setCenter(latlng.lat(), latlng.lng());
                map.addMarker({
                    lat: latlng.lat(),
                    lng: latlng.lng(),
                    icon: "/images/mapicon.png"
                });

                $('input[name="Longitude"]').val(latlng.lng());
                $('input[name="Latitude"]').val(latlng.lat());
            }
        }
    });
});
于 2012-11-12T14:57:58.727 に答える