首页 > 解决方案 > 地图最大程度缩小时允许捏合缩放手势

问题描述

  1. 在移动设备上访问http://output.jsbin.com/bobaki/5
  2. 捏合缩放按钮并单击它
  3. 尝试缩小以查看整个地图

这是不可能的,因为地图会劫持所有手势(即使它被最大限度地缩小)。重新加载页面无济于事,因为在重新加载之间保留了缩放设置。

我正在使用默认设置:

var map = new mapboxgl.Map({
    container: 'map',
    style: 'mapbox://styles/mapbox/streets-v10'
});

我想更改它们,以便在最大限度缩小地图时,mapbox 停止劫持和preventDefault缩小手势。

作为参考,这就是它在我手机上的外观(我无法显示 URL 栏,我无法向下滚动或缩小): 被困在地图中

标签: zoomingmapboxmapbox-gl-jspinchzoom

解决方案


根据这个mapbox github问题

在移动设备或任何使用(触摸)移动地图的设备上使用 mapbox gl-js 时,由于事件侦听器被视为被动而引发错误。

那么,您是否尝试style.touchAction = 'none'在 mapbox 元素上进行设置?


推荐阅读