Маркеры не будут отображаться на картах Google - PullRequest
0 голосов
/ 25 октября 2011

Мне нужно разместить несколько маркеров на карте Google. Вот проблема: у меня есть массив данных широты / долготы. Мне нужно, чтобы маркер появился на карте для каждой пары широта / долгота. Но это не так. Если я попрошу функцию распечатать координаты вместо того, чтобы отмечать их на карте, это будет работать нормально. Я не получаю сообщение об ошибке в любом случае, поэтому я застрял. На странице отображается карта, но без каких-либо маркеров. Вот код функции, которая должна добавлять маркеры:

//adds markers to the map
function addMarkers(locarray) {

    var infowindow = new google.maps.InfoWindow();
    var marker, i;
    for (i = 0; i < locarray.length; i++) {  
        marker = new google.maps.Marker({
        position: new google.maps.LatLng(locarray[i][0], locarray[i][1]),
        map: map
        });
        google.maps.event.addListener(marker, 'click', (function(marker, i) {
        return function() {
        infowindow.setContent('some words');
        infowindow.open(map, marker);
        }
        })(marker, i));
    }

}

Вот функция инициализации (вызывается при загрузке тела):

function initialize() {
    geocoder = new google.maps.Geocoder();
    var latlng = codeAddress("<?php echo $_POST['postal']; ?>");
    var myOptions = {
    zoom: 11,
    center: latlng,
    mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}

геокодер и map объявлены как глобальные переменные. Функция codeAddress возвращает широту и долготу места, где я хочу центрировать карту, она была протестирована и отлично работает. Это НЕ проблема, я оставляю это для упрощения и не допускаю PHP.

А вот скрипт, который объявляет массив и вызывает функцию addMarkers:

<script type='text/javascript'>
var locations = [
      [-33.890542, 151.274856],
      [-33.923036, 151.259052],
      [-34.028249, 151.157507]
    ];
addMarkers(locations)
</script>

Кто-нибудь видит что-то не так с этим?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...