Hacer un poco de código
Acabo de crear un guión basado en los 5 años de edad idea por RASG. Vamos a crear un mapa oculto y cuando esté completamente cargado, acercarlo. Lo hacemos una y otra vez hasta que almacena en caché todos los zooms. El trabajo fiddle is here. He colocado una información div
en la esquina superior derecha para ver cómo avanza el zoom.
// init the hidden map
var mapOptions = {
center: new google.maps.LatLng(center.lat, center.lng),
zoom: minZoom + 1
};
var preMap = new google.maps.Map(document.getElementById('map-canvas-hidden'), mapOptions);
// when the current hidden map is fully loaded, zoom it in
preMap.addListener('tilesloaded', function() {
$('#out').html('Zoom ' + preMap.getZoom() + ' preloaded');
// if there is zoom to zoom-in, do it after some rest
if(preMap.getZoom() < maxZoom) {
setTimeout(function(){
preMap.setZoom(preMap.getZoom() + 1);
}, 50);
}
});
es lo que realmente almacenar en caché el mapa?
Bueno, borre la caché del navegador y abra el violín.
En actividad de la red del navegador podemos ver una gran cantidad de descarga de imágenes. Luego, acerca el mapa y observa la actividad nuevamente. Parece que todas las imágenes se cargan desde el caché.
espero que ayude.
Estoy teniendo el mismo problema. Desea que el cambio del nivel de zoom sea más suave ... – Flaudre
@Flaudre ¿ha probado la solución de RASG? – wong2
Quizás acercarse lentamente no es la mejor experiencia de usuario para usuarios con conexiones lentas? Incluso si precarga todos los datos, tendrán que esperar que se carguen muchas imágenes en algún momento – dpix