2013-11-24 6 views
0

Я пробовал множество вариантов, но ни один из них не отображает маркер на карте. Может ли кто-нибудь помочь, пожалуйста?Невозможно добавить маркер на Google maps Api

</script> 
    <script> 
    function initialize() { 
     var latlng = new google.maps.LatLng(51.51697, -0.14650); 
     var myOptions = { 
      zoom: 16, 
      center: latlng, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var map = new google.maps.Map(document.getElementById("map_canvas"), 
     myOptions); 
    } 

    // To add the marker to the map, use the 'map' property 
    var marker = new google.maps.Marker({ 
    position: new google.maps.LatLng(51.51697, -0.14650), 
    map: map, 
    title:"HERE" 
}); 

// To add the marker to the map, call setMap(); 
marker.setMap(map); 
    </script> 

Спасибо, миллион.

ответ

1

Есть две причины, по которым маркер не отображается:

  1. Переменная map локальна внутри функции initialize, так что вы не можете добраться до него из кода вне функции.

  2. Функция вызывается из события загрузки, поэтому вы пытаетесь добавить маркер к карте до ее существования.

Добавить маркер на карту внутри функции initialize. Там у вас есть доступ к переменной, и карта уже создана при добавлении маркера.

Если вам нужно получить доступ к карте за пределами функции initialize, объявите переменную map вне функции.

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