J'ai cherché haut et bas pour une solution à ce problème. Je récupère les positions dynamiques des marqueurs et montre la carte positionnée et zoomée sur la ville qui a été sélectionnée dans mon application. Si je fais alors défiler ou zooom la carte de Google et demande alors une mise à jour de la position de marqueurs (en récupérant le xml) je perds la nouvelle position et agrandis j'étais. Comment faire pour que la fonction vérifie ce que le getCenter et le getZoom actuels doivent utiliser dans le rechargement de la carte?Google Maps - maintenir la position actuelle et zoom lors du rechargement des pointeurs de carte dynamiques
function load() {
if(map) { // Does not work
var lat = map.getCenter().lat();
var lng = map.getCenter().lng();
var zoom = map.getZoom();
} else {
var lat = '<?=$Lat?>';
var lng = '<?=$Lon?>';
var zoom = <?=$zoom?>;
}
var map_options = {
center: new google.maps.LatLng(lat,lng),
zoom: zoom,
mapTypeId: '<?=$map_type?>'
};
var map = new google.maps.Map(document.getElementById("map"), map_options);
var infoWindow = new google.maps.InfoWindow;
<< Other marker creating code here that works fine >>
}
salut dale. avez-vous essayer de le rendre global var? quelque chose comme mapdata = {lat: "", lng: "", zoom: ""} en dehors de la fonction load() {}? – jebberwocky
Ok, mais je ne comprends pas comment je peux alors obtenir les valeurs de getCenter et getZoom avant le "new google.maps()" et ils utilisent ces valeurs dans le map_options – DRAllan