Google Maps API несколько маркеров - PullRequest
0 голосов
/ 09 ноября 2011

Я пытаюсь вставить некоторые маркеры в карты Google, используя следующий код.Но это не похоже на работу.Карта центрируется в правильном положении, но я вижу маркеры.

var points = [<asp:literal runat="server" id="litPoints"/>];

    $(document).ready(function () {
       var mapCenter = new google.maps.LatLng(<asp:literal runat="server" id="litMapCentre"/>);
           var options = {
               zoom:<asp:literal runat="server" id="litZoomLevel"/>, 
                center: mapCenter,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            };


        var map = new google.maps.Map($("#monitorMap")[0], options);        
        GetMap(map, points);
    });






    function GetMap(map, mappoints) {       

        var image=new google.maps.MarkerImage('../Images/map/iconr.png',
                    new google.maps.Size(20,32),
                    new google.maps.Point(0,0)); 

        for(var i=1; i < points.length; i++) {
            var m=points[i];

            var mylatlng=new google.maps.LatLng(m[0], m[1]);
            var marker=new google.maps.Marker({
                position: mylatlng,
                map: map,
                icon: image}); 
         }    
}

1 Ответ

0 голосов
/ 09 ноября 2011

Измените вторую функцию так:

function GetMap(map, mappoints) {       

        var image=new google.maps.MarkerImage('../Images/map/iconr.png',
                    new google.maps.Size(20,32),
                    new google.maps.Point(0,0)); 

        for(var i=0; i < mappoints.length; i++) {
            var m=mappoints[i];

            var mylatlng=new google.maps.LatLng(m[0], m[1]);
            var marker=new google.maps.Marker({
                position: mylatlng,
                map: map,
                icon: image}); 
         }   

Вы создавали переменную с именем mappoints, но затем называли ее точками. Кроме того, массивы javascript индексируются нулем, поэтому при их цикле обычно нужно начинать с 0, а не с 1.

...