在返回值之前检查地理位置是否已保存

时间:2013-03-11 19:47:09

标签: javascript html5 geolocation

我正在尝试做什么:

我需要请求用户的位置并保存纬度和频率。经度成对象。由于这可能需要一些时间,我需要偶尔检查一下坐标是否已保存。我正在使用setTimeout检查坐标是否每500ms保存一次。一旦`

问题:

checkCoords()运行一次并返回“用户坐标不存在”,但似乎它不会继续运行。

保存坐标后,确保userGeometry返回的最佳方法是什么?

EXAMPLE.GetUserGeometry = function() {
  console.log("Starting geolocation...");

  var userGeometry = navigator.geolocation.getCurrentPosition(save_location);

  function save_location(position) {
    var user_coordinates = {
      latitude: position.coords.latitude,
      longitude: position.coords.longitude
    };

    console.log(user_coordinates);
    return user_coordinates;
  }

  setTimeout(checkCoords(userGeometry), 500);

  function checkCoords(coords) {
    if (typeof coords === 'undefined') {
      console.log("user coords don't exist");
    } else {
      console.log("user coords saved");
    }
  }

};

0 个答案:

没有答案