2010-11-30 4 views
2

Salut à tous je travaille actuellement avec google map apiProblème dans l'API Google Map ...!

pour tracer plusieurs adresses avec le marqueur

j'ai écrit le code suivant que je comprends la fonction api alors que l'étude de la documentation google api

for(var i=0; i<address.length; i++){ 
geocoder.getLocations(address[i],function(response){  
      if(response){ 
       place = response.Placemark[0]; 
        point = new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]); 
       map.setCenter(point, 12); 
       map.addOverlay(createmarker(point)); 
      } 
}); 
} 

createmarker est ma fonction qui fonctionne correctement, mais le problème est cet endroit marqueurs aléatoires avec l'adresse provient du réseau d'adresses parfois 10, 12, 14, 14, et ainsi de suite ....

Je veux juste tracer toute l'adresse existe dans mon tableau d'adresses et sur les cartes Google Maps trop ..

donc il doit être nombre fixe de marqueurs sur la carte ...!

Alors, y a-t-il quelqu'un qui peut m'aider pour ce problème ..!

Merci est avancé

+0

Vous devez nous aider avec des informations supplémentaires. Ce que votre code est en train de faire, c'est essayer de tracer plusieurs adresses. Est-ce que toutes les adresses géocodent correctement? Que se passe-t-il lorsque vous n'utilisez qu'une seule adresse dans votre tableau? Est-ce que vous réalisez que le géocodeur effectue un appel asynchrone, de sorte que vos points n'apparaîtront pas sur la carte dans l'ordre du tableau. En outre, vous continuez à recentrer la carte pour chaque point, ce qui sera ennuyeux pour les utilisateurs finaux lorsque la carte ne cesse de sauter. –

+0

En fait, je veux juste tracer toute l'adresse dans mon tableau d'adresses pour mapper je vous ai envoyé mon code il suffit de tracer les fabricants dynamiquement je veux tracer toutes les adresses sur la carte si j'utilise autre chose pour le géocodage de mon adresse Quand j'ai entré une seule adresse, ça marche bien alors pourquoi est-ce que ça fait un problème avec ma boucle? Je vais résoudre n'importe quelle idée ou code ..! – user525166

Répondre

1

La fonction createMarker devrait ressembler à ceci. Veuillez voir mon exemple here, où vous pouvez ajouter plusieurs marqueurs sur la carte. Le javascript complet peut être trouvé here.

function createMarker(latlng) { 
    var contentString = html; 
    var marker = new google.maps.Marker({ 
     position: latlng, 
     map: map, 
     zIndex: Math.round(latlng.lat()*-100000)<<5 
    }); 

    google.maps.event.addListener(marker, 'click', function() { 
     infowindow.setContent(contentString); 
     infowindow.open(map,marker); 
    }); 
    marker.MyZoom = zoom; 
    return marker; 
}