【发布时间】:2023-03-29 22:29:01
【问题描述】:
简单问题:访问 Mapbox GL JS 中的 Geolocate 控件需要什么选择器?
您可以轻松访问所有各种地图控件以添加属性,例如标题标签、可访问性标签(aria-label 等),甚至可以启用引导工具提示和数据切换等。
但是,尽管使用了各种各样的尝试选择器,但我无法通过直接的 javascript 或 jquery 访问 Geolocate Control。它根本不响应我尝试过的任何事情。
下面是一个显示情况的jsfiddle。这是添加标题属性的简单案例。我在导航控件上成功显示它,然后在地理定位控件上失败。
这只是一些明显的选择器错误,还是我缺少的地理定位控件存在根本不同?或者这是一个错误? https://jsfiddle.net/5413yjmr/
作品:
document.querySelector('.mapboxgl-ctrl-compass').setAttribute('title', 'Compass Control');
不起作用:
document.querySelector('.mapboxgl-ctrl-geolocate').setAttribute('title', 'Find My Current Location');
也不行:
document.querySelector('.mapboxgl-ctrl-icon.mapboxgl-ctrl-geolocate').setAttribute('title', 'Find My Current Location');
我也非常疯狂地尝试各种不同的选择器,使用 jquery 来获取它们等等。
【问题讨论】:
-
附言。应该已经在 GeolocateControl 按钮上设置了 aria-label。
-
是的,但是那个标签只是写着“地理定位”,这对用户来说并不友好......我还想添加更多的属性。
-
请考虑在 GitHub 上提交拉取请求以将其更改为更好的内容。
标签: javascript jquery mapbox mapbox-gl-js