function displayMapAndClick ()
{
var latlng = new google.maps.LatLng (29.0167, 77.3833);
var myOptions =
{
zoom:zm,
center:latlng,
mapTypeId:google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map (document.getElementById ("map"), myOptions);
directionsDisplay.setMap (map);
}
Où zm
est une variable globale définie par défaut 7
.
Maintenant, je souhaite changer le niveau de zoom de cette carte à travers ce programme.
Comment faire cela sans réinitialiser la carte?
OU la réinitialisation est-elle obligatoire?
Utilisez la méthode setZoom()
de google.maps.Map
classe.
var mapOptions = {
/* Initial zoom level */
zoom: 8
...
};
map = new google.maps.Map(..., mapOptions);
/* Change zoom level to 12 */
map.setZoom(12);
En plus de la sollicitation d'Alexanders: j'ai eu le même problème, mais ce qui précède ne fonctionnait pas pour moi dans tous les navigateurs car parfois map.setZoom () est exécuté avant le chargement de la carte.
Envelopper la fonction comme ceci la fera toujours fonctionner:
...
map = new google.maps.Map(..., mapOptions);
/* Change zoom level to 12 */
google.maps.event.addListenerOnce(map, 'bounds_changed', function() {
map.setZoom(12);
});