如果在同一页面中使用 navigator.geolocation.getCurrentPosition 和 navigator.geolocation.watchPosition 将不起作用

Posted

技术标签:

【中文标题】如果在同一页面中使用 navigator.geolocation.getCurrentPosition 和 navigator.geolocation.watchPosition 将不起作用【英文标题】:navigator.geolocation.getCurrentPosition and navigator.geolocation.watchPosition are not working if used in same Page 【发布时间】:2020-06-06 07:47:03 【问题描述】:

我在同一个html页面中使用navigator.geolocation.getCurrentPositionnavigator.geolocation.watchPosition,我使用navigator.geolocation.watchPosition作为指南针指针,使用navigator.geolocation.getCurrentPosition显示两个地方之间的距离。如果只使用navigator.geolocation.getCurrentPosition 会显示距离但指南针不起作用,有什么方法可以同时使用getCurrentPosition and watchPosition

navigator.geolocation.watchPosition(locationUpdate, locationUpdateFail, 
    enableHighAccuracy: false,
    maximumAge: 30000,
    timeout: 27000
  );

 navigator.geolocation.getCurrentPosition(function(position) 
        showNearPlaces(position);

      );

【问题讨论】:

控制台有错误吗? 没有错误,我认为两者是相交的,我使用setTimeout 调用watchPosition,一旦调用watchPosition,距离显示不正确。我使用了getCurentPosition 您能否提供一个 Minimal, Reproducible Example 以便我们进行验证? 【参考方案1】:

可能是我的回答对其他人有帮助, 我只使用了watchPosition并将经纬度存储在global variable中,现在我不需要使用getCurrentPosition。 感谢您查看我的问题。

【讨论】:

以上是关于如果在同一页面中使用 navigator.geolocation.getCurrentPosition 和 navigator.geolocation.watchPosition 将不起作用的主要内容,如果未能解决你的问题,请参考以下文章