Есть ли способ поймать, если пользователь подтверждает / прерывает доступ к navigator.geolocation.getCurrentPosition ()? - PullRequest
1 голос
/ 24 ноября 2011

У меня есть стандартный вызов API геолокации в моем веб-приложении:

navigator.geolocation.getCurrentPosition(foundLocation, noLocation);

Ну, пользователь нажимает OK на своем устройстве (поэтому он подтверждает доступ для обмена данными).

Если местоположение определено по GPS, вызывается функция foundLocation; иначе он вызывает noLocation.

Мне нужно проверить, нажал ли пользователь OK (в начале) или он прервал обмен данными с GPS.

Как я могу поймать это событие? Надеюсь, вопрос ясен более или менее ...

1 Ответ

2 голосов
/ 24 ноября 2011

как указано 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. Не уверен, что они исправятэто?

...