javascript - 如何仅用两根手指在谷歌地图内移动?

标签 javascript google-maps mobile google-maps-api-3 user-experience

我对移动用户有一个大问题:

我有一个具有 width: 100% 的谷歌地图,所以当用户滚动窗口时如果触摸 map “内部”的屏幕,滚动将只针对 map 而不是所有的窗口...(昨天我父亲在 map 里面滚动了 3 分钟 XD)

要滚动窗口可以触摸屏幕的边框,但非常非常严格,并非所有用户都理解这一点。 我不想要一个 width 小于 100% 的 map ,所以我必须找到其他解决方案...

这将使 map 只有在用两根手指触摸时才可拖动,几乎在捏合缩放时...

但是我可以使用哪个谷歌地图事件?

也许:

    google.maps.event.addListener(map, 'dblclick', function(event){
      this.setOptions({draggable:true});
    });

但也许第一次点击 map 时我应该提醒(在 map 上有一个 div)可以用两根手指移动 map ??

你怎么看?代码是否正确?

非常感谢,对不起我的英语和奇怪的问题 :D

最佳答案

如果您使用的是 API v3.27 或更高版本。初始化 map 时只需添加属性 gestureHandling: 'Cooperative'

像这样

var map = new google.maps.Map(document.getElementById('map'), {
          zoom: 4,
          center: myLatLng,
          gestureHandling: 'cooperative'
        });

More Info Here

或者如果您想在创建 map 后执行此操作,请执行

map.setOptions({gestureHandling: 'cooperative'});

More Info Here

关于javascript - 如何仅用两根手指在谷歌地图内移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38027061/

相关文章:

html - 移动网页设计 : background image size

css - 如何正确修复桌面和移动浏览器之间的 CSS 不一致?

javascript - 如何在 Canvas 中绘制 fontawesome(version >=5.0)?

javascript - 在 Mocha 测试中使用 for 循环

javascript - 将航路点添加到 Google 距离矩阵以确定里程

google-maps - 我可以将用户限制在 Google map 上的特定范围和缩放级别吗?

ios - 删除谷歌地图的折线

ios - Collection View 完成处理程序的 PerformBatchUpdates 未执行

javascript - 如何显示来自服务器端的消息?

javascript - 如何用字符串数组(js)搜索字符串?