Получить GeoLocation в браузере - PullRequest
1 голос
/ 19 июля 2011

У меня на странице есть следующий JavaScript, чтобы узнать местоположение пользователя:

            state.currentTimer = navigator.geolocation.watchPosition(success, error, { enableHighAccuracy: true, maximumAge: 5000 });

Предполагается, что страница вызывается из браузера на мобильном телефоне. Однако метод watchPosition кажется невероятно ненадежным. Иногда оно никогда не будет получено, иногда оно будет отключено, иногда оно будет работать нормально, а затем просто остановится.

Я попытался устранить проблему сигнала телефона, протестировав его в городе с хорошим сигналом.

Есть ли лучший способ получить местоположение с мобильного телефона в браузере?

Ответы [ 2 ]

1 голос
/ 19 июля 2011

Я использую:

navigator.geolocation.getCurrentPosition(
    function(pos) {
        pos.coords.latitude;
        pos.coords.longitude;
        pos.coords.accuracy;
    },
    function(error) {
        error.code;
    }
);

Вся информация здесь http://dev.w3.org/geo/api/spec-source.html

0 голосов
/ 19 июля 2011

Действительно, это единственный путь прямо сейчас. Чтобы получить более точные результаты, вы можете проверить свойство accuracy объекта, переданного в обработчик success.

...