如何使用传单实时提取用户经度和纬度

时间:2018-07-09 14:46:56

标签: mobile geolocation leaflet latitude-longitude


我在跨平台的移动应用中使用Leaflet。
我希望用户实时在地图上看到他/她的运动。
我还想将它们的经度和纬度分别作为全局变量保存,因为我以后需要此信息进行计算。
以下是我到目前为止的内容:

map.locate({
            watchPosition:true,
            maxZoom:16
          });

function onLocationFound(e)
{
  var radius = e.accuracy / 2;

  L.circle(e.latlng, radius,
    {
      color: 'red',
      fillColor: '#f03',
      fillOpacity: 0.5,
      radius: 400
    }).addTo(map);
}

map.on('locationfound', onLocationFound);


我相信“ watchPosition:true”可使地图继续监视用户。
我只是不知道如何提取经度和纬度信息。
预先感谢

2 个答案:

答案 0 :(得分:0)

Leaflet map.locate选项仅为watch

  

如果使用true,则使用W3C watchPosition方法开始连续观察位置变化(而不是检测一次)。

答案 1 :(得分:0)

function onLocationFound(e)
{
  var radius = e.accuracy / 2;
  userLat = e.latlng.lat;
  userLng = e.latlng.lng;
  movingCircle.setLatLng(e.latlng);
  movingCircle.redraw();
}

var userLocation = map.locate
({
  watch:true,
  maxZoom:16,
  enableHighAccuracy: true
});
var userLat;
var userLng;

    enter code here

var movingCircle = L.circle([0,0], 20,
{color: 'red',
fillColor: '#f03',
fillOpacity: 0.5,
draggable: true }).addTo(map);