gpt4 book ai didi

geolocation - 关闭 Openlayers 3 地理定位

转载 作者:行者123 更新时间:2023-12-04 02:16:06 24 4
gpt4 key购买 nike

所以,我在 Openlayers 3.9.0 map 中关闭地理定位功能的想法是有一个切换按钮,当点击它时它会停止跟踪并从地理定位图层中删除该功能

geolocation.setTracking('false');
featuresOverlay.getSource().clear();

然后再次打开它,它会打开跟踪,向地理定位图层添加一个功能,设置其坐标并重新居中 map

geolocation.setTracking('true');
featuresOverlay.getSource().addFeature(positionFeature);
var coordinates = geolocation.getPosition();
positionFeature.setGeometry(coordinates ? new ol.geom.Point(coordinates) : null);
view.setCenter(coordinates);

嗯,这在技术上不算作打开/关闭地理定位,因为它删除了所有视觉元素,它实际上并没有打开/关闭 API。有没有这种可能,或者以上就够了?

最佳答案

当然可以,经过一个小改动。

假设代码中的 geolocation 引用了 ol.Geolocation 的实例,调用 geolocation.setTracking(false) 将使 geolocation 在浏览器的地理定位 API 上调用 clearWatch。相关代码为here .

但是,setTracking 需要一个 bool 值。您发送字符串 'false',它被解释为真值(因为它是一个非空字符串)。从 setTracking 参数中移除引号,它应该会按预期工作。

关于geolocation - 关闭 Openlayers 3 地理定位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33551349/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com