Geolocation html5

Geolocation html5

Давайте розбиратися в тому, що тут написано. У методу getCurrenPosition () є кілька аргументів. Як перший аргумент передається ім'я функції, яка викликається при успішному зчитуванні розташування. В якості другого аргументу передається ім'я функції, яка викликається в разі, якщо координати визначити не вдалося. В даному прикладі вказані всі помилки, які можуть виникнути. Тут за допомогою конструкції switch case ми перевіряємо код помилки, і в залежності від помилки виводимо повідомлення користувачу (це як раз і є опис даних помилок).

Якщо координати були успішно отримані, то в функцію (в нашому випадку showPosition) передається об'єкт (ми його назвали position), який містить властивості timestamp і coords. Timestamp повертає час визначення місця розташування.

coords містить інші властивості, опис яких видно з прикладу. Скажу тільки про властивість heading. Результат повертається в градусах, тобто якщо ви переміщується на північ, то результатом буде 0, якщо на захід 270, на схід - 90, на південь - 180. Думаю, ви зрозуміли. Широту і довготу ще можна визначити на комп'ютері, але ось результат роботи інших властивостей потрібно тестувати на мобільному пристрої з підтримкою GPS.

Властивість accuracy повертає точність визначення місцезнаходження. Припустимо, результат роботи даного властивості дорівнює 1000. Це означає, що користувач знаходиться в радіусі 1 км від певного місцезнаходження.

У методу getCurrentPosition () є третій параметр, який встановлює деякі параметри для визначення місцезнаходження. приклад:

Властивість enableHighAccuracy використовується, щоб визначити координати з високою точністю. За замовчуванням false. Сильно витрачає батарею, без сильної потреби не використовувати. На стаціонарних комп'ютерах без підтримки GPS марно.

Властивість timeout задає кількість часу, який можна витратити на визначення місцезнаходження. Задається в мілісекундах. У нашому прикладі на визначення місцезнаходження можна витратити 10 секунд. Якщо за цей час не вдалося визначити місцезнаходження, то повернеться помилка TIMEOUT. За замовчуванням стоїть значення 0. Це означає, що скільки потрібно часу для визначення - стільки і буде витрачено.

Властивість maximumAge дозволяє кешування даних. У нашому прикладі кешуватися даними можна користуватися протягом хвилини.

Як же визначити чи підтримує браузер користувача даний функціонал? Можна написати такий код:

У даній статті ви дізналися про об'єкт geolocation в HTML5.

Ще статті.

Схожі статті