Последние учебники веб-разработки
×

HTML5 Руководство

HTML ГЛАВНАЯ HTML Введение HTML редакторы HTML базовый HTML элементы HTML Атрибуты HTML Заголовки HTML Пункты HTML Стили HTML форматирование HTML цитаты HTML Компьютерный код HTML Комментарии HTML Цвета HTML CSS HTML связи HTML Изображений HTML таблицы HTML Списки HTML Блок и строковые элементы HTML Классы HTML раскладка HTML отзывчивый HTML Iframes HTML JavaScript HTML Глава HTML юридические лица HTML Символы HTML Charset HTML URL шифровать HTML XHTML

HTML формы

HTML формы HTML Форма Элементы HTML Типы входных данных HTML Входные атрибуты

HTML5

HTML5 вступление HTML5 Поддержка HTML5 элементы HTML5 Семантика Миграция HTML5 HTML5 Гид по стилю

HTML Графика

HTML холст HTML SVG

HTML СМИ

HTML СМИ HTML видео HTML аудио HTML Плагины HTML YouTube

HTML APIs

HTML Geolocation HTML Перетаскивания HTML Локальное хранилище HTML App кэш HTML Web Workers HTML SSE

HTML Примеры

HTML Примеры HTML викторина HTML5 викторина HTML Резюме

HTML Рекомендации

HTML Список тегов HTML Атрибуты HTML События HTML холст HTML Аудио Видео HTML DOCTYPEs HTML Цвета HTML Наборы символов HTML URL шифровать HTML Языковые коды HTTP Сообщения HTTP методы PX to EM конвертер Горячие клавиши

HTML5 Geolocation


HTML геолокации API используется для поиска позиции пользователя.


Что W3C Geolocation API?

W3C Geolocation API является попыткой по World Wide Web Consortium (W3C), чтобы стандартизировать интерфейс для получения информации о географическом местоположении для клиентской стороны устройства.

Он определяет набор объектов, ECMAScript стандарта, который выполняется в клиентском приложении дать местоположение устройства клиента через консультирование Расположения информационных серверов, которые являются прозрачными для интерфейса прикладного программирования (API).

Наиболее распространенными источниками информации о местоположении являются IP-адрес, Wi-Fi и Bluetooth MAC-адрес, радиочастотная идентификация (RFID), место подключения Wi-Fi или устройство глобальной системы позиционирования (GPS) и идентификаторы сотовых GSM / CDMA.

Место возвращается с заданной точностью в зависимости от местоположения источника лучшей доступной информации,.


Развертывание в веб-браузерах

Веб-страницы могут использовать API геолокации непосредственно, если веб-браузер реализует его. Исторически сложилось так, что некоторые браузеры могут получить поддержку с помощью плагина Google Gears, но это было прекращено в 2010 году, и на стороне сервера API это зависит от того перестал отвечать в 2012 году.

API местоположения идеально подходит для веб-приложений для мобильных устройств, таких как персональные цифровые помощники (PDA) и смартфоны. На настольных компьютерах, W3C Geolocation API работает в Firefox, начиная с версии 3.5, Google Chrome, Opera 10.6, Internet Explorer 9.0 и Safari 5. На мобильных устройствах, он работает на Android (прошивкой 2.0+), IOS, Windows Phone и Maemo.

W3C Geolocation API также поддерживается Opera Mobile 10.1 - доступен для Android и Symbian устройств (S60 поколений 3 и 5) с 24 ноября 2010 года.

Google Gears при условии геолокации поддержки старых и несоответствующих браузеров, включая Internet Explorer 7.0+, как плагин Gears, и Google Chrome, который реализован Gears изначально. Она также поддерживает геолокация на мобильных устройствах, в качестве плагина для Android браузера (до версии 2.0) и Opera Mobile для Windows Mobile.

Тем не менее, Google Gears Geolocation API несовместим с API W3C Geolocation и больше не поддерживается.


Особенности

Результат W3C Geolocation API, как правило, дают 4 свойства, в том числе местоположение широты и долготы (координаты), высота (высота), и [точности позиции, собранной], все из которых зависят от местоположения источников.

В некоторых запросах, высота над уровнем моря может дать или не возвращать никакого значения.


Найдите положение пользователя

HTML геолокации API используется для получения географического положения пользователя.

Так как это может поставить под угрозу неприкосновенность частной жизни, позиция не доступна, если пользователь не одобрит его.


Поддержка браузеров

Числа в таблице указать первую версию браузера, который полностью поддерживает геолокацию.

API
Geolocation 5.0 9,0 3,5 5.0 16,0

Note: геолокация гораздо более точным для устройств с GPS, как iPhone .


Использование HTML Geolocation

getCurrentPosition() метод используется для получения позиции пользователя.

Приведенный ниже пример возвращает широту и долготу позиции пользователя:

пример

<script>
var x = document.getElementById("demo");
function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.getCurrentPosition(showPosition);
    } else {
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}
function showPosition(position) {
    x.innerHTML = "Latitude: " + position.coords.latitude +
    "<br>Longitude: " + position.coords.longitude;
}
</script>
Попробуй сам "

Объяснение примера:

  • Проверьте геолокации поддерживается
  • Если поддерживается, запустить getCurrentPosition() метод. Если нет, то вывести сообщение пользователю
  • Если getCurrentPosition() метод является успешным, он возвращает координаты объекта к функции , указанной в параметре (showPosition)
  • showPosition() функция выводит широту и долготу

Приведенный выше пример является очень простой геолокации скрипт, без обработки ошибок.


Обработка ошибок и Отказы

Второй параметр getCurrentPosition() метод используется для обработки ошибок. Она определяет функцию для запуска, если он не может получить местоположение пользователя:

пример

function showError(error) {
    switch(error.code) {
        case error.PERMISSION_DENIED:
            x.innerHTML = "User denied the request for Geolocation."
            break;
        case error.POSITION_UNAVAILABLE:
            x.innerHTML = "Location information is unavailable."
            break;
        case error.TIMEOUT:
            x.innerHTML = "The request to get user location timed out."
            break;
        case error.UNKNOWN_ERROR:
            x.innerHTML = "An unknown error occurred."
            break;
    }
}
Попробуй сам "

Отображение результатов в карте

Для того, чтобы отобразить результат в карте, вам необходимо получить доступ к службе карты, как Google Maps.

В приведенном ниже пример, возвращаемая широта и долгота, используются , чтобы показать расположение в карте Google (using a static image) с (using a static image) :

пример

function showPosition(position) {
    var latlon = position.coords.latitude + "," + position.coords.longitude;

    var img_url = "http://maps.googleapis.com/maps/api/staticmap?center=
    "+latlon+"&zoom=14&size=400x300&sensor=false";

    document.getElementById("mapholder").innerHTML = "<img src='"+img_url+"'>";
}
Попробуй сам "

Google Map Script
Как показать интерактивную карту Google с маркером, масштабирования и опции перетаскивания.


Расположение конкретной информации

На этой странице показано, как показать положение пользователя на карте.

Геолокации также очень полезно для информации местоположения конкретного, как:

  • До современной местной информации
  • Показаны точки интересов, рядом с пользователем
  • Поворачивать витки навигации (GPS)

getCurrentPosition() Метод - Возвращение данных

getCurrentPosition() метод возвращает объект , если он успешен. Свойства широта, долгота и точность всегда возвращаются. Остальные свойства возвращаются если таковые имеются:

Имущество Возвращает
coords.latitude Широты в виде десятичного числа
coords.longitude Долготы в виде десятичного числа
coords.accuracy Точность положения
coords.altitude Высота в метрах над уровнем моря
coords.altitudeAccuracy Точность высоты положения
coords.heading Заголовок в градусах по часовой стрелке с севера
coords.speed Скорость в метров в секунду
timestamp Дата / время отклика

Геолокации объект - Другие интересные методы

watchPosition() - возвращает текущее положение пользователя и продолжает возвращать обновленное положение как пользователь перемещается (like the GPS in a car) .

clearWatch() - останавливает watchPosition() метод.

Приведенный ниже пример показывает watchPosition() метод. Вам необходимо точное устройство GPS , чтобы проверить это (like iPhone ) , (like iPhone ) :

пример

<script>
var x = document.getElementById("demo");
function getLocation() {
    if (navigator.geolocation) {
        navigator.geolocation.watchPosition(showPosition);
    } else {
        x.innerHTML = "Geolocation is not supported by this browser.";
    }
}
function showPosition(position) {
    x.innerHTML = "Latitude: " + position.coords.latitude +
    "<br>Longitude: " + position.coords.longitude;
}
</script>
Попробуй сам "