API do Google Maps EnablesCrollWheelZoom () - Por que não diminui o zoom corretamente?
-
25-09-2019 - |
Pergunta
Então, eu tenho um problema com um mapa do Google usando ladrilhos personalizados, mas consegui simplificá -lo no exemplo abaixo.
Pegando o Exemplo simples do Google fornece controles Eu adicionei a linha
map.enableScrollWheelZoom();
Isso me dá o html simples:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example: Controls</title>
<script src="http://maps.google.com/maps?file=api&v=2" type="text/javascript"></script>
<script type="text/javascript">
function initialize() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map_canvas"))
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.enableScrollWheelZoom();
}
}
</script>
</head>
<body onload="initialize()" onunload="GUnload()">
<div id="map_canvas" style="width: 500px; height: 300px"></div>
</body>
</html>
Tudo parece bom até você aumentar o zoom para o nível máximo de zoom Usando a roda do mouse (vendo o mundo inteiro). Por volta da metade do tempo, fica preso no nível do zoom antes do último. A rolagem fornece ladrilhos de mapa nos dois níveis de zoom.
Eu tentei no Chrome, IE8 e FF3.6 e todos se comportam o mesmo.
Alguma ideia?
Levantado como um bug - http://code.google.com/p/gmaps-api-issues/issues/detail?id=2218
Solução
Muito estranho. Também pude reproduzir esse bug com seus mapas de amostra: http://gmaps-samples.googlecode.com/svn/trunk/scrollzoom/scrollzoom.htm
A ativação do zoom contínuo parece resolver o problema.
Adicionar map.enableContinuousZoom();
depois map.enableScrollWheelZoom();
Boa sorte!