2012-09-17 14 views
23
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); 
    } 

zm, global bir değişken varsayılan olarak 7 olarak ayarlanmıştır.Google haritalarının yakınlaştırma seviyesi programatik olarak nasıl değiştirilir?

Şimdi, bu haritanın yakınlaştırma düzeyini değiştirmek istiyorum.

Haritayı yeniden başlatmadan bunu yapmanın yolu nedir?

YA DA zorunlu başlatılıyor?

cevap

45

google.maps.Map sınıfından setZoom() yöntemini kullanın.) (Ben de aynı problem vardı, ama yukarıda çünkü bazen tüm tarayıcılarda map.setZoom benim için işe yaramadı:

var mapOptions = { 
    /* Initial zoom level */ 
    zoom: 8 
    ... 
}; 
map = new google.maps.Map(..., mapOptions); 
/* Change zoom level to 12 */ 
map.setZoom(12); 
10

Benim REP .. cevap için çok düşük ama ALEXANDERS' sollution için daha yorum harita yüklenmeden önce yürütülür.

böyle fonksiyonu tamamlayan her zaman işe yapacaktır:

... 
map = new google.maps.Map(..., mapOptions); 
/* Change zoom level to 12 */ 
google.maps.event.addListenerOnce(map, 'bounds_changed', function() { 
    map.setZoom(12); 
}); 
+0

sarma bir olay dinleyicisi de @publicJorn benim için çalıştı neydi açıklandığı gibi. Teşekkürler – CIRCLE

+0

@ publicJorn'un çözümü benim için de çalıştı - teşekkürler! – lookdad

İlgili konular