2011-06-10 23 views
11

Tek bir belirtilen panTo numaralı çağrıda geri arama işlevini nasıl kurabilirim? İşte benim kodum.Google Maps v3 panTo Geri Arama?

var loc = data.split(','); 
map.panTo(new google.maps.LatLng(loc[0], loc[1]), function(){ 
    console.log('this never logs...'); 
}); 

cevap

18

Neyi başarmaya çalıştığınız açık değil. Panning tamamlandığında geri aramanın çalışacağını mı düşünüyorsunuz? Eğer öyleyse, bu deneyebilirsiniz:

map.panTo(new google.maps.LatLng(loc[0], loc[1])); 
google.maps.event.addListenerOnce(map, 'idle', function(){ 
    console.log('this logs after the panTo finishes.'); 
}); 
+7

Eh, kullanan sanırım boşta olay böyle geri arama simüle etmek en iyi yoldur. Çözümünüz sadece bir istisna ile iyi çalışır - harita merkezi konumu değişmezse boştaki etkinlik tetiklenmez. Dinleyici daha sonra rölanti olayı tetiklenene kadar app'da kalır (yakınlaştırma veya başka bir kaydırma işleminden sonra). Sonunda, bu tür dinleyicilerin boşta kalma olayını bekleyeceği söylenebilir. Bu nedenle, harita merkezinin gerçekte değiştirildiğini kontrol etmek gereklidir. – Tomik

İlgili konular