Tout d'abord, merci d'avoir répondu à cela 🙂 Très apprécié!
J'ai créé une carte en utilisant le code suivant, et cela fonctionne parfaitement.
function initialize() { var mapOptions = { zoom: 5, center: new google.maps.LatLng(48.160, -6.832), disableDefaultUI: true, mapTypeId: google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions); setMarkers(map, cities); }
Mais alors, je veux des marqueurs à chacune des villes dans ce tableau (ne pas suggérer de changer cela car ce code exact résout un autre problème que j'avais, à moins que cela ne soit absolument nécessaire):
var cities = { 'Groningen': [ 53.216723950863425, 6.560211181640625, 7], 'San Francisco': [ 34.01131647557699, -118.25599389648437, 5], 'New York City': [ 40.7143528, -74.0059731, 3] };
Et j'utilise ce code pour placer les marqueurs réels (ce qui ne fonctionne pas):
function setMarkers(map, locations) { // Add markers to the map for (var i = 0; i < cities.length; i++) { var data = cities [i] var marker = new google.maps.Marker({ position: new google.maps.LatLng (data[0], data[1]), map: map, icon: image, title: 'test', }); } }
cities
ne sont pas un tableau, mais un objet, donc vous ne pouvez pas utiliser
for (var i = 0; i < cities.length; i++) { //... }
Utilisez-le à la place
for (var key in cities) { var data = cities[key]; var marker = new google.maps.Marker({ position: new google.maps.LatLng (data[0], data[1]), map: map, icon: image, title: 'test', }); }