在 Mapbox API 参考页面上,列出了 7 个对象,可让您启用和禁用用户交互。有 BoxZoomHandler、ScrollZoomHandler、DragPanHandler、DragRotateHandler、KeyboardHandler、DoubleClickZoomHandler 和 TouchZoomRotateHandler。
https://docs.mapbox.com/mapbox-gl-js/api/#user%20interaction%20handlers
例如,要禁用鼠标双击缩放,请执行map.DoubleClickZoomHandler.disable()。
我想禁用双触摸缩放,但我没有看到任何参考。有谁知道如何做到这一点?
编辑:我使用的是 Windows 10 和 Google Chrome 浏览器。
我试图仅为名为“marker_purple”的图标设置图标偏移量 [5, -19],所有其他图标的偏移量为 [0, 0]。我的尝试导致给定图层没有显示任何图标。该图层仅具有点几何类型,并且具有许多不同的图标类型。
我尝试过的:
"layout": {
"icon-image": "{icon}",
"icon-offset": [
"case",
["==", ["get", "icon"], "marker_purple"],
[5, -19],
[0, 0]
]
}
Run Code Online (Sandbox Code Playgroud)
我还尝试了以下方法,以防表达式无法返回数组,但仍然没有图标显示。
"layout": {
"icon-image": "{icon}",
"icon-offset": [
[
"case",
["==", ["get", "icon"], "marker_purple"],
5,
0
],
[
"case",
["==", ["get", "icon"], "marker_purple"],
-19,
0
]
]
}
Run Code Online (Sandbox Code Playgroud)
如果我指定一个不带表达式的偏移量,一切都会完美运行。
"icon-offset": [10,10]
Run Code Online (Sandbox Code Playgroud)
所有图标移动 [10,10]
为了使表达式正常工作,我是否缺少某些东西?
感谢您花时间阅读本文以及您可以提供的任何帮助。