Книга: JavaScript. Подробное руководство, 6-е издание

Geolocation

Geolocation

позволяет получить широту и долготу местоположения пользователя

Объект Geolocation определяет методы, позволяющие получить точные географические координаты местоположения пользователя. В броузерах, поддерживающих такую возможность, объект Geolocation можно получить через объекта Navigator, обратившись к свойству navigator.geolocation. Методы, описываемые ниже, опираются на использование некоторых других типов: местоположение определяется в форме объекта Geoposition, а ошибки - в форме объектов GeolocationError.

Методы

void clearWatch(long watchId)

Останавливает слежение за местонахождением пользователя. В аргументе watchId должно передаваться значение, полученное соответствующим вызовом метода watchPosition().

void getCurrentPosition(function success, [function error], [object options])

Асинхронно определяет местонахождение пользователя с учетом параметров options (перечень свойств объекта option приводится ниже). Этот метод немедленно возвращает управление, а когда местонахождение пользователя будет определено, указанной функции обратного вызова success будет передан объект Geoposition. Или в случае ошибки (возможно из-за того, что пользователь не дал разрешение на определение его координат) функции обратного вызова error будет передан объект GeolocationError.

long watchPosition(function success, [function error], [object options])

Этот метод похож на метод getCurrentPosition(), но после определения текущего местонахождения пользователя он продолжает следить за его координатами и вызывает функцию success каждый раз, когда обнаружит существенное их изменение. Возвращает число, которое можно передать методу clearWatch(), чтобы остановить слежение за местонахождением пользователя.

Параметры

Аргумент options, передаваемый методам getCurrentPosition() и watchPosition(), является обычным объектом, содержащим ноль или более свойств из числа следующих:

boolean enableHighAccuracy

Этот параметр говорит о желательности определения координат с высокой точностью, даже если это повлечет увеличение расхода энергии в аккумуляторах. По умолчанию имеет значение false. В устройствах, способных определять местонахождение посредством измерения мощности сигналов WiFi или с помощью GPS, установка этого параметра в значение true обычно означает «использовать GPS».

long maximumAge

Этот параметр определяет максимальное время (в миллисекундах), прошедшее с того момента, как объект Geoposition был передан функции обратного вызова success. По умолчанию имеет значение 0, т.е. каждый вызов метода getCurrentPosition() или watchPosition() будет заново определять местонахождение. Если установить этот параметр в значение 60000, например, то реализации будет позволено возвращать любой объект Geoposition, полученный в течение последней минуты.

long timeout

Этот параметр определяет продолжительность ожидания выполнения запроса в миллисекундах. По умолчанию имеет значение Infinity. По истечении указанного интервала времени будет вызвана функция обратного вызова error. Обратите внимание, что время ожидания разрешения пользователя на получение его местонахождения не входит в это значение параметра timeout.

Оглавление книги


Генерация: 1.612. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз