2013-11-27 3 views
0

У меня есть моя карта и код, чтобы перебирать массив json для добавления меток на карту.Google Map Маркеры не отображаются

Карта загружается, и я получаю консольный вывод о том, что каждый парк добавлен в карту, но на нем не отображается маркер.

Любые идеи?

function initialize() { 

    var mapOptions = { 
     center: new google.maps.LatLng(-34.397, 150.644), 
     zoom: 2 
    }; 

    var map = new google.maps.Map($('#maptest')[0], mapOptions); 

    $.getJSON("/parks.json", function(parks) { 
     $.each(parks, function(key, park) { 
     if (park.lat && park.lng) { 
      var latlng = park.lat + ',' + park.lng; 
      var location = new google.maps.LatLng(latlng); 
      var marker = new google.maps.Marker({ 
      position: location, 
      map: map 
      }); 
      console.log('Added map marker for ' + park.name + ' at ' + park.lat + ', ' + park.lng); 
     } 
     }); 
    }); 
    } 

    google.maps.event.addDomListener(window, 'load', initialize); 

ответ

1

google.maps.LatLng конструктор ожидает вас пройти в широте и долготе number типа. В настоящее время он передается в виде строки (var latlng = park.lat + ',' + park.lng;). Удалите эту строку и просто передать в значениях park.lat и park.lng:

var location = new google.maps.LatLng(park.lat, park.lng); 

Для получения дополнительной справочной мыши here.

+0

Спасибо, почему я не пробовал, чтобы я понятия не имел! Прекрасно работает! – rctneil

Смежные вопросы