L'API Google Maps: pan de marqueurs à partir d'une liste.
Bonjour 🙂 s'il vous Plaît garder avec moi, je ne suis pas un codeur, mais je vais essayer d'apprendre par la pratique. Ceci est la page je travaille actuellement; http://www.websu.it/devnw/dev/contact.html.
J'ai actuellement une carte à l'aide de l'API Google Maps, en utilisant le code javascript suivant:
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);
}
var cities = [
['Groningen', 53.216723950863425, 6.560211181640625, 4],
['San Francisco', 34.01131647557699, -118.25599389648437, 5],
['New York City', 40.7143528, -74.0059731, 3],
['Amsterdam', 52.3702157, 4.8951679, 2],
['Maroubra Beach', -33.950198, 151.259302, 1]
];
function setMarkers(map, locations) {
for (var i = 0; i < locations.length; i++) {
var city = locations[i];
var myLatLng = new google.maps.LatLng(city[1], city[2]);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: city[0],
zIndex: city[3]
});
}
}
This continues below...
Et puis j'ai créé une liste où chaque élément li, lorsqu'il est cliqué sur les résultats dans un panoramique de la carte à l'un de ces marqueurs.
J'ai ajouté le code suivant et il fonctionne très bien. Mais cela signifie que je dois ajouter les longitudes/latitudes pour chaque ville, dans le code ci-dessus tableau de "villes", ainsi que dans le code ci-dessous pour le var laLatLng. Comment puis-je obtenir la lat et lon plus facilement dans le panoramique script ci-dessous?
$(document).ready(function() {
initialize();
$("#contacts").on("click", "#sanfransisco", function() {
var laLatLng = new google.maps.LatLng(34.01131647557699, -118.25599389648437);
map.panTo(laLatLng);
map.setZoom(5);
});
$("#contacts").on("click", "#groningen", function() {
var laLatLng = new google.maps.LatLng(53.216723950863425, 6.560211181640625);
map.panTo(laLatLng);
map.setZoom(6);
});
$("#contacts").on("click", "#nyc", function() {
var laLatLng = new google.maps.LatLng(40.7143528, -74.0059731);
map.panTo(laLatLng);
map.setZoom(6);
});
$("#contacts").on("click", "#losangeles", function() {
var laLatLng = new google.maps.LatLng(52.3702157, 4.8951679);
map.panTo(laLatLng);
map.setZoom(6);
});
});
J'espère que quelqu'un peut m'expliquer comment obtenir les variables à partir des villes dans l'cliquable liste de javascript. Merci beaucoup, j'apprécie beaucoup votre réponse!
Oui, ce serait l'idéal 🙂
OriginalL'auteur Robin Papa | 2013-01-13
Vous devez vous connecter pour publier un commentaire.
Si vous convertissez la
cities
tableau à un objet comme:Et ajouter un
data-
attribut avec une correspondance de nom de la ville avec une classe commune nom à chacun de ces liens:Vous pouvez en créer un gestionnaire pour l'ensemble de la classe:
C'était en effet la meilleure solution, je vous remercie! Auriez-vous peut-être aussi savoir comment faire pour ajouter un marqueur pour chacune de ces villes? Je vais essayer et ne peut pas le faire fonctionner, mais peut-être que je vais vous poser une nouvelle question sur ce site.
Que l'on est ici maintenant: stackoverflow.com/questions/14308884/... Merci encore pour votre aide!
OriginalL'auteur charlietfl
Voici comment je le ferais, en utilisant simplement le géocodage inversé fonctionnalités de Google Maps pour rechercher les noms de ville:
JS
VIOLON
Merci adeneo pour votre aide! J'ai essayé les deux de votre solution et l'un des charlieftl, mais comme charlieftl dit, il fallait que je le zoom variable de trop. Donc, je vais aller avec celui-là 🙂 Merci!
sauvé mes "quelques" temps......merci
OriginalL'auteur adeneo