有没有办法捕获用户是否确认/中止对navigator.geolocation.getCurrentPosition()的访问?

时间:2011-11-24 09:07:07

标签: javascript html geolocation gps w3c

我在我的网络应用程序上对geolocation api进行了标准调用:

navigator.geolocation.getCurrentPosition(foundLocation, noLocation);

好吧,用户在他的设备上按OK(因此,他确认了共享数据的访问权限)。

如果发现GPS的位置,则调用函数foundLocation;否则,它会调用noLocation

我需要检查用户是否按下了OK(开头)或者他已经使用GPS中止了共享数据。

我怎样才能抓住那个事件?希望问题或多或少明白......

1 个答案:

答案 0 :(得分:2)

http://dev.w3.org/geo/api/spec-source.html

指定
// Request a position. We accept positions whose age is not
// greater than 10 minutes. If the user agent does not have a
// fresh enough cached position object, it will automatically
// acquire a new one.
navigator.geolocation.getCurrentPosition(successCallback, errorCallback, {maximumAge:600000});

function successCallback(position) {
  // By using the 'maximumAge' option above, the position
  // object is guaranteed to be at most 10 minutes old.
}

function errorCallback(error) {
    // Update a div element with error.message.
    if (error == 1) {
        alert('no location provided');
    }
}

<强>更新

似乎是mozilla https://bugzilla.mozilla.org/show_bug.cgi?id=675533中的一个错误。不确定他们是否会解决这个问题?