geolocation – Stepan Suvorov Blog https://stepansuvorov.com/blog Release 2.0 Wed, 21 Aug 2013 09:41:31 +0000 en-US hourly 1 https://wordpress.org/?v=6.3.1 JavaScript тест в eBuddy https://stepansuvorov.com/blog/2013/08/javascript-%d1%82%d0%b5%d1%81%d1%82-%d0%b2-ebuddy/ https://stepansuvorov.com/blog/2013/08/javascript-%d1%82%d0%b5%d1%81%d1%82-%d0%b2-ebuddy/#comments Mon, 19 Aug 2013 15:10:15 +0000 http://stepansuvorov.com/blog/?p=1183 Continue reading ]]>

Вот такую вот JavaScript задачку подкинула компания eBuddy.

Создать небольшое web-приложение, которое выдаст приблизительное расстояние в километрах от текущего метоположения пользователя до ближайшей достопримечательности по введеному адресу. История последних запросов сохраняется в приложении и пользователь может искать по ней.

Дополнительно:

  •  достаточно, чтобы работало в HTML5-совместимых браузерах и с предпочтительно адаптивным лейаутом
  •  вы можете использовать  Google Geocoding API для конвертации адреса в координаты и обратно
Подсказки:

 

]]>
https://stepansuvorov.com/blog/2013/08/javascript-%d1%82%d0%b5%d1%81%d1%82-%d0%b2-ebuddy/feed/ 1
Получаем координаты используя HTML5 Geolocation API https://stepansuvorov.com/blog/2013/08/html5-geolocation-api/ https://stepansuvorov.com/blog/2013/08/html5-geolocation-api/#respond Fri, 16 Aug 2013 09:46:58 +0000 http://stepansuvorov.com/blog/?p=1177 Continue reading ]]> Небольшая заметка с примерами использования возможностей геолокации современных браузеров.

Все что нас интересует происходит с объекте navigator.geolocation, поэтому чтобы проверить поддерживает ли браузер данную возможность можно выполнить следующий код:

if ("geolocation" in navigator) {
  /* geolocation поддерживается */
} else {
  /* geolocation НЕ поддерживается */
}

Для получения текущего местоположения используется метод navigator.geolocation.getCurrentPosition() имеющий следующий синтаксис:

getCurrentPosition(success, error, options)

где

success - колбэк на успешное получение координат
error - колбэк обработки ошибки
options - опции

Самый простой пример получения координат:

navigator.geolocation.getCurrentPosition(function(position) {
  console.log(position.coords.latitude, position.coords.longitude);
});

Пример на jsfiddle.

Также объект geolocation содержит метод watchPosition(), который устанавливает хэндлер на событие изменения локации. Принимает параметры аналогичные параметрам метода getCurrentPosition().

Еще один пример с использованием google maps.

 

Полезные ссылки:

HTML5 Geolocation API(Presentation from HTML5 Camp)

Using geolocation

The Geolocation API

]]>
https://stepansuvorov.com/blog/2013/08/html5-geolocation-api/feed/ 0