2017-02-23 69 views
-1

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

function initialize() { 
    var myLatlngBDG = new google.maps.LatLng(-6.913947, 107.633825); 

    var mapOptionsBDG = { 
    zoom: 5, 
    center: myLatlngBDG, 
    mapTypeId: google.maps.MapTypeId.ROADMAP, 
    mapTypeControl: 0 
    } 
    var mapBDG = new google.maps.Map(document.getElementById('map-BDG'), mapOptionsBDG); 

    var markerBDG = new google.maps.Marker({ 
    position: myLatlngBDG, 
    map: mapBDG, 
    title: 'PT. Buana Citra Abadi Bandung' 
    }); 

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

карта отображается сам, но помечая не появляется, и поэтому название согласно this tutorial мне нужно написать marker.setMap() показать маркер, но, как вы можете видеть, что я уже писать

если сама проблема не в JavaScript, то это может быть проблема

порядок включая скрипт в HTML:

<html> 
<<link rel="stylesheet" type="text/css" href="css/map.css"/> 
<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB8k-8ztQ6Vk34XP6OEBMZ7PryuMx8jjX8&callback=initMap"></script> 
<script src="js/map.js"></script> 
</html> 

НОВАЯ ПРОБЛЕМА почему карта иногда появляется иногда исчезает? Я имею в виду, когда я обновить страницу, она исчезает, я обновить несколько раз, и он вновь появляется

+0

похоже, вы определили 'mapBDG' внутри' инициализации() ', но затем попытаться использовать его вне функции? Что такое «маркер»? Вы уже установили 'mapBDG' как значение ключа' map' 'markerBDG' внутри функции' initialize'. –

+0

@ J.Titus right, извините, я должен был написать 'markerBDG.setMap();' но тогда он все еще не показывает маркер 'google.maps.event.addDomListener (окно, 'load', initialize);' означает, что веб выполняет эту функцию при загрузке окна, но только маркер не появляется – Citra45Abadi

+0

Можете ли вы показать html-файл и порядок, в котором вы импортируете скрипты? – JoxieMedina

ответ

0

Кажется, что все хорошо, возьмите этот код в качестве примера и проверить ваш, может быть, вы найдете разницу

google.maps.event.addDomListener(window, "load", function() { 
 
    var myLatlngBDG = new google.maps.LatLng(-6.913947, 107.633825); 
 

 
    var mapOptionsBDG = { 
 
     zoom: 5, 
 
     center: myLatlngBDG, 
 
     mapTypeId: google.maps.MapTypeId.ROADMAP, 
 
     mapTypeControl: 0 
 
    } 
 
    var mapBDG = new google.maps.Map(document.getElementById("map-BDG"), mapOptionsBDG); 
 

 
    var markerBDG = new google.maps.Marker({ 
 
     position: myLatlngBDG, 
 
     map: mapBDG, 
 
     title: 'PT. Buana Citra Abadi Bandung' 
 
    }); 
 

 
    markerBDG.setMap(mapBDG); 
 
});
#map-BDG{ 
 
    width:500px; 
 
    height:300px; 
 
}
<!DOCTYPE html> 
 
<html> 
 

 
    <head> 
 
    <link rel="stylesheet" href="style.css"/> 
 
    </head> 
 

 
    <body> 
 
    <h1>Maps Example</h1> 
 
    <div id="map-BDG"></div> 
 
    <script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB8k-8ztQ6Vk34XP6OEBMZ7PryuMx8jjX8"></script> 
 
    <script src="script.js"></script> 
 
    </body> 
 

 
</html>

+0

. Я решил, что мне нужно использовать функцию setMap() внутри функции, но все же. он не показывает маркер – Citra45Abadi

+0

, это тоже не работает, мне не нужна функция 'setMap()', так как 'map: mapBD' уже установил маркер, по крайней мере, предположительно – Citra45Abadi

+0

Я не знаю почему, но вам нужно для запуска фрагмента два раза, чтобы заставить его работать – JoxieMedina