0

私は私が取り組んでいる地図を持っています。JS と Map API は初めてです。デモを見つけて、自分のニーズに合わせて修正しています。
私の問題は、マップが機能することです。正しい位置を中心にしていますが、初期化時にマーカーをレンダリングしません。ただし、運転ルートが要求された場合はマーカーをレンダリングします。目が痛くなるまですべてを読みましたが、コードのどこにマーカーを配置するかをまだ把握できていないようです。コード内に配置すると、レンダリングされません。

すべてのコードを含むフィドルがあります。誰かがそれを見て、マップの初期化でレンダリングされるようにマーカーを追加する必要がある場所を指摘できれば素晴らしいでしょう

フィドルはこちらhttp://jsfiddle.net/hughesjoseph/nADJK/

初期マップをレンダリングすると思われるため、この関数にマーカーを配置しようとしました。

                mapSetup = function () {

                map = new google.maps.Map($Selectors.mapCanvas, {
                    zoom: 16,
                    center: new google.maps.LatLng(32.565243, -97.130531),

                    mapTypeControl: true,
                    mapTypeControlOptions: {
                        style: google.maps.MapTypeControlStyle.DEFAULT,
                        position: google.maps.ControlPosition.TOP_RIGHT
                    },

                    panControl: true,
                    panControlOptions: {
                        position: google.maps.ControlPosition.RIGHT_TOP
                    },

                    zoomControl: true,
                    zoomControlOptions: {
                        style: google.maps.ZoomControlStyle.LARGE,
                        position: google.maps.ControlPosition.RIGHT_TOP
                    },

                    scaleControl: true,
                    streetViewControl: true,
                    overviewMapControl: true,

                    mapTypeId: google.maps.MapTypeId.ROADMAP
                });

                autoCompleteSetup();
                directionsSetup();
                trafficSetup();
            }, // mapSetup Ends 
4

1 に答える 1

0

map変数を初期化した直後にマーカーを配置できるため、mapSetup関数は次のようになります。

mapSetup = function () {
    map = new google.maps.Map($Selectors.mapCanvas, {
        zoom: 16,
        center: new google.maps.LatLng(32.565243, -97.130531),

        mapTypeControl: true,
        mapTypeControlOptions: {
            style: google.maps.MapTypeControlStyle.DEFAULT,
            position: google.maps.ControlPosition.TOP_RIGHT
        },

        panControl: true,
        panControlOptions: {
            position: google.maps.ControlPosition.RIGHT_TOP
        },

        zoomControl: true,
        zoomControlOptions: {
        style: google.maps.ZoomControlStyle.LARGE,
            position: google.maps.ControlPosition.RIGHT_TOP
        },

        scaleControl: true,
        streetViewControl: true,
        overviewMapControl: true,

        mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    var marker1 = new google.maps.Marker({
        position: new google.maps.LatLng(32.565243, -97.130531),
        map: map
    });

    autoCompleteSetup();
    directionsSetup();
    trafficSetup();
}, // mapSetup Ends 

http://jsfiddle.net/nADJK/10/

于 2013-01-26T02:12:42.100 に答える