放大谷歌地图api 3 [ios]

时间:2014-09-26 10:52:39

标签: javascript ios iphone jquery-mobile google-maps-api-3

根据Google Map documentation。在iPhone

  

通过双指捏合完成变焦。

因此,当我在屏幕上点击我的手指然后移动然后地图变焦但之后我从屏幕释放手指然后在地图重新加载之前看到的缩放比渲染的实际缩放更多。

目前,我正在 IPhone 5 上测试 ios 7.1.2 iPhone 4S ios 8

我在我的应用程序中使用JQuery Mobile Framework,并且动态生成地图。 (当我使用固定值创建地图时,它可以正常工作)

我创造了小提琴,你可以看到同样的问题。 Link

我的问题的一些图片 第一张图片图打开

first

当我尝试用手指捏缩放我的地图时的第二张照片。

second picture

当我从屏幕上松开手指时的第三张照片。

third picture

因此无法保持其在第二张图片中显示的缩放级别。如何解决这个问题

2 个答案:

答案 0 :(得分:1)

请尝试更换:

google.maps.event.addListener(mapClass.map, 'zoom_changed', function() {
    mapClass.map.panTo(myLatlng);
});

with:

google.maps.event.addListener(mapClass.map, 'zoom_changed', function() {
    mapClass.map.panTo(mapClass.map.center);
});

希望它有所帮助。

答案 1 :(得分:0)

我解决了这个问题(或者可能是非常类似的问题)购买限制我在zoom_changed听众中所做的工作。我用了lodash throttle

替换此

google.maps.event.addListener(mapClass.map, 'zoom_changed', myFunction);

有了这个

google.maps.event.addListener(mapClass.map, 'zoom_changed', _.throttle(myFunction,100));