Геолокация на сайте HTML5 — Часть II - Творческая студия #Cruelten
Блог
Делимся с Вами своими знаниями и новостями
22.10.2014

Геолокация на сайте HTML5 — Часть II

В предыдущем уроке мы с Вами рассмотрели, как получать координаты местоположения человека, который зашел на Ваш сайт. В сегодняшнем уроке мы усовершенствуем нашу геолокацию и воспользуемся вторым аргументом метода getCurrentPosition, который будет выводить нам ошибку, если такие последуют. На данный момент мы имеем вот это. Код данного примера берем из предыдущего урока.

В предыдущем уроке мы не делали обработчик ошибок, и это довольно большое упущение, сейчас мы должны это исправить. Итак.

Берем наш метод navigator.geolocation.getCurrentPosition(displayLocation); и добавляем второй аргумент displayError. Теперь наш метод выглядит так.

navigator.geolocation.getCurrentPosition(displayLocation, displayError);

Теперь нам нужно написать только код обработчика. Чтобы понимать его смысл мы должны знать, что API-интерфейс Geolocation передает нашему обработчику объект error, содержащий числовой код с описанием причины, по которой ему не получилось получить координаты. В зависимости от кода ошибки браузер может выдать ту или иную информацию. Ниже я предствил код обработчика.

Вот собственно и весь код. Вы спросите меня, а что же значат все эти ошибки? Давайте пройдемся по ним.

Коды ошибок

Ошибка под кодом ноль означает, что браузер не смог определить ошибку, иными словами, когда другие ошибки точно не являются ими – выводится данная ошибка. В данном случае очень важно обратиться к свойству error.message.

Ошибка с кодом единица. Здесь все просто, это значит, что пользователь не захотел и отключил возможнсть определения его местонахождения.

Ошибка со знаком цифры 2. Браузер попытался определить Ваше местонахождение, но не смог. Очень сильно соотносится с нулевой ошибкой, поэтому в моем коде я и указал их в своей функции.

Ну и ошибка под номер 3. Здесь выводится ошибка, которая возникает по истечении определенного времени. Так называемая ошибка времени запроса. Вот собственно и все. Теперь мы можем отлавливать ошибки.

В следующей статье мы научимся измерять расстояние между двумя точками в километрах. Следите за обновлениями.

Комментарии:

Свяжитесь с нами уже сейчас




Отправляя нам сообщение, содержащее Ваши персональные данные, Вы соглашаетесь с нашей политикой конфиденциальности.
Онлайн заявка


Отправляя нам сообщение, содержащее Ваши персональные данные, Вы соглашаетесь с нашей политикой конфиденциальности.