google-maps - html5 移动应用程序的多点触控支持?专用于 map 缩放/显示

标签 google-maps html google-maps-api-3

我想为移动设备制作一个基于 html5 的网页,显示来自 Google map (或其他 map 提供商,但我更喜欢 GMaps)的 map ,支持多点触控。这可能吗?

我的意思是:如果你打开谷歌地图的 Android 原生应用,你会看到你可以缩放,用两根手指旋转 map 等。但是如果你在移动平台上查看谷歌地图的 html5 应用,虽然您仍然可以用一根手指四处平移,但不能通过捏合来缩放等。要放大后者 (html5) 应用程序,您必须按提供的“+”和“-”按钮。

最后,可能有一些适合我的特定应用程序的时髦方法,不是在 html5 中嵌入 GMaps 的常规方法,因此我想简要分享一下我的应用程序想法。总体目标是制作一个仅显示有限区域(例如,开发人员选择的位置周围 20 公里)且只有几个缩放级别(例如 4 级)的 html5 移动应用程序。这意味着只需要显示有限数量的小块。因此,也许这些图 block 可以在应用程序首次加载时预先打包并存储在本地,以便用户永远不必等待动态加载图 block 。因此,应用程序用户可能永远不需要使用 GMaps API,它可能就像一张大图像,我只是在里面平移/缩放。事实上,如果更容易的话,我们可以使用另一个 map 提供者,而不是 GMaps。除了在 html5 文档中嵌入 (Google) map 数据的常规方法之外,还有其他一些时髦的方法吗?

谢谢,

最佳答案

Google Maps API v3 支持在移动设备上双指缩放。它不需要使用 + 和 - 按钮。示例:http://tiny.ucsf.edu/parnassus_map

异常:在这种情况下,某些运行 Android 操作系统的 HTC 硬件似乎无法以预期的方式处理双指缩放。我相信这与忽略网页中告诉浏览器不处理缩放本身的视口(viewport)设置有关。我不知道有任何解决此问题的方法,并且已经忍受了一段时间。 我在 Evo 和 Thunderbolt 等 HTC 硬件上遇到过这个问题,但在其他制造商的硬件上没有遇到过。

更新: OP 报告了 Droid 2 上的问题,所以我猜这不仅仅是 HTC 硬件问题。一种没有出现此问题的设备是运行 Honeycomb 的 Galaxy Tab,因此看起来并非所有 Android 设备都受到影响。

更多后续更新:目前看来,您不能指望能够在 Android 浏览器的 JavaScript 中接收双指缩放事件。这是在 Android 问题跟踪器中:http://code.google.com/p/android/issues/detail?id=11909

关于google-maps - html5 移动应用程序的多点触控支持?专用于 map 缩放/显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5413013/

相关文章:

google-maps - Google Places API 给出一个拼写正确的结果和所有拼写错误的结果

ios - iOS 版 Google 静态 map

javascript - 在 REACT 中使用 js 和 css 旋转木马

ios - Safari 上 createScriptProcessor 的替代方案?

javascript - 将字符串转换为谷歌地图地点

jquery - 将自动完成列表中的国家/地区 Google map 限制为 “Australia”,但显示每一个

android - 通过edittext在android map 中搜索位置

javascript - Jquery:如何捕获不在<div>区域内的点击事件?

ios - Swift 3中的Google Maps API指南

Android 谷歌地图 - 删除位置精度圆