zoom on google maps [Desktop]

I have a website which uses Google Maps API v3 and i couldn't get the pinch-zoom property to work properly. Instead of a Pinch-to-Zoom-In, the gesture always performs a Zoom-Out.

This is a PC monitor with Touch capability. So, as i was unable to get it work properly, i decided to disable the feature.

I cancelled the touch event using below

document.documentElement.ontouchstart = function() {return false}

This has an unwanted side-effect. This code cancels the entire touch events and hence user cannot use the Google Maps default Zoom control. I tried changing the 'ontouchstart' to a 'ontouchmove' event but this is not preventing the map from zooming out.

Any ideas on how to disable the feature or may be how to fix the pinch-to-zoomIn feature? I can post the website url but its just a plain google map and you will not notice the issue unless if you a have touch enabled monitor.


Here someone with a similar problem solved it this way, maybe it will work for you

var tblock = function (e) {
if (e.touches.length > 1) {
    e.preventDefault()
}

return false;
}

document.body.addEventListener("touchmove", tblock, true);

Google Maps API v3 Disable Pinch to Zoom on iPad Safari

And here

How to disable pinch in Android MapView


Disabling "touchmove" only solves part of the problem, as Google Maps has its own ideas. Your device will allow you to pinch-zoom (to an extent, and inconsistently), until you disable Google Maps' own draggable option, eg

mymap.setOptions({draggable: false});

At least that's how it is on Android 4.4.2.

链接地址: http://www.djcxy.com/p/81582.html

上一篇: Google地图缩放控件和标记消失

下一篇: 放大谷歌地图[桌面]