Google maps api 3 如何在navigator.geolocation.getcurrentposition完成后调用另一个js函数?

Google maps api 3 如何在navigator.geolocation.getcurrentposition完成后调用另一个js函数?,google-maps-api-3,Google Maps Api 3,看看这个: function doGeolocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(positionSuccess, positionError); if(//here i need check) { Save(); } } else {

看看这个:

  function doGeolocation() {
       if (navigator.geolocation) {
          navigator.geolocation.getCurrentPosition(positionSuccess, positionError);
       if(//here i need check)
         {
         Save();
         } 
      }
  else 
  {
    positionError(-1);
  }
}
因此,在内部的“if”中,我想检查navigator.geolocation.getcurrentposition()是否;已成功完成。任何帮助都将不胜感激


谢谢..

getCurrentPosition
自行检查是否成功,并根据结果调用不同的函数

在函数中,一旦成功,将调用名为
positionSuccess
的函数;如果地理定位失败,则将调用
positionError

因此,您需要提供一个名为
positionSuccess()
的函数来进行保存。你不需要自己检查


请记住,
getCurrentPosition
需要一些时间。这将交给一个单独的进程[这称为异步处理],您的代码将继续到下一行。在您当前的代码中,执行将在找到地理定位结果之前很好地到达“here I need check”测试。这就是为什么还有其他函数来处理成功和失败-无法保证结果何时返回。

正确。.我不希望if块中的“save”方法能够开始执行自己。在我的保存方法中,我将获取的坐标信息保存到客户端的Cookie中,并在需要时使用它们在地图上指向保存的位置信息。正如您所说,当前它获取默认坐标并保存它们,这当然是我不想要的。@Unknown:因此,仅在“Success”回调函数中执行保存操作,您已将其命名为
positionSuccess()
。只有当
getCurrentPosition
成功时,才会调用该函数。