Samouczek HTML

Strona główna HTML Wprowadzenie do HTML Edytory HTML Podstawy HTML Elementy HTML Atrybuty HTML Nagłówki HTML Akapity HTML Style HTML Formatowanie HTML Cytaty HTML Komentarze HTML Kolory HTML HTML CSS Linki HTML Obrazy HTML Ulubione HTML Tabele HTML Listy HTML Blok HTML i wbudowany Klasy HTML Identyfikator HTML Ramki HTML HTML JavaScript Ścieżki plików HTML Nagłówek HTML Układ HTML HTML Responsywne Kod komputerowy HTML Semantyka HTML Przewodnik po stylach HTML Jednostki HTML Symbole HTML Emotikony HTML Zestaw znaków HTML Kodowanie adresu URL HTML HTML a XHTML

Formularze HTML

Formularze HTML Atrybuty formularza HTML Elementy formularza HTML Typy danych wejściowych HTML Atrybuty wejściowe HTML Atrybuty formularza wejściowego HTML

Grafika HTML

Płótno HTML HTML SVG

Media HTML

Media HTML Wideo HTML Dźwięk HTML Wtyczki HTML HTML YouTube

API HTML

Geolokalizacja HTML Przeciągnij/upuść HTML Magazyn sieciowy HTML HTML Web Workers HTML SSE

Przykłady HTML

Przykłady HTML Quiz HTML Ćwiczenia HTML Certyfikat HTML Podsumowanie HTML Dostępność HTML

Odniesienia HTML

Lista znaczników HTML Atrybuty HTML Globalne atrybuty HTML Obsługa przeglądarki HTML Zdarzenia HTML Kolory HTML Płótno HTML HTML audio/wideo Dokumenty HTML Zestawy znaków HTML Kodowanie adresu URL HTML Kody językowe HTML Wiadomości HTTP Metody HTTP Konwerter PX na EM Skróty klawiszowe

API geolokalizacji HTML


API geolokalizacji HTML służy do lokalizowania pozycji użytkownika.


Znajdź pozycję użytkownika

API geolokalizacji HTML służy do uzyskania położenia geograficznego użytkownika.

Ponieważ może to narazić prywatność, pozycja nie jest dostępna, chyba że użytkownik ją zatwierdzi.

Uwaga: Geolokalizacja jest najdokładniejsza dla urządzeń z GPS, takich jak smartfony.


Obsługa przeglądarki

Liczby w tabeli określają pierwszą wersję przeglądarki, która w pełni obsługuje geolokalizację.

API
Geolocation 5.0 - 49.0 (http)
50.0 (https)
9.0 3.5 5.0 16.0

Uwaga: od Chrome 50 interfejs API geolokalizacji będzie działał tylko w bezpiecznych kontekstach, takich jak HTTPS. Jeśli Twoja witryna jest hostowana w niezabezpieczonym źródle (takim jak HTTP), żądania uzyskania lokalizacji użytkownika przestaną działać.


Korzystanie z geolokalizacji HTML

Metoda getCurrentPosition()służy do zwrócenia pozycji użytkownika.

Poniższy przykład zwraca szerokość i długość geograficzną pozycji użytkownika:

Przykład

<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>

Przykład wyjaśniony:

  • Sprawdź, czy Geolokalizacja jest obsługiwana
  • Jeśli jest obsługiwana, uruchom metodę getCurrentPosition(). Jeśli nie, wyświetl wiadomość dla użytkownika
  • Jeśli metoda getCurrentPosition() powiedzie się, zwraca obiekt współrzędnych do funkcji określonej w parametrze (showPosition)
  • Funkcja showPosition() zwraca szerokość i długość geograficzną

Powyższy przykład to bardzo prosty skrypt geolokalizacji, bez obsługi błędów.



Obsługa błędów i odrzuceń

Drugi parametr getCurrentPosition()metody służy do obsługi błędów. Określa funkcję do uruchomienia, jeśli nie uda się uzyskać lokalizacji użytkownika:

Przykład

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;
  }
}

Informacje specyficzne dla lokalizacji

Na tej stronie pokazano, jak pokazać pozycję użytkownika na mapie.

Geolokalizacja jest również bardzo przydatna w przypadku informacji dotyczących lokalizacji, takich jak:

  • Aktualne informacje lokalne
  • Pokazywanie interesujących miejsc w pobliżu użytkownika
  • Szczegółowa nawigacja (GPS)

Metoda getCurrentPosition() — Zwróć dane

Metoda getCurrentPosition()zwraca obiekt w przypadku powodzenia. Zawsze zwracane są właściwości szerokości, długości i dokładności. Inne właściwości są zwracane, jeśli są dostępne:

Property Returns
coords.latitude The latitude as a decimal number (always returned)
coords.longitude The longitude as a decimal number (always returned)
coords.accuracy The accuracy of position (always returned)
coords.altitude The altitude in meters above the mean sea level (returned if available)
coords.altitudeAccuracy The altitude accuracy of position (returned if available)
coords.heading The heading as degrees clockwise from North (returned if available)
coords.speed The speed in meters per second (returned if available)
timestamp The date/time of the response (returned if available)

Obiekt geolokalizacji - Inne ciekawe metody

Obiekt Geolokalizacja posiada również inne ciekawe metody:

  • watchPosition()- Zwraca bieżącą pozycję użytkownika i kontynuuje zwracanie zaktualizowanej pozycji, gdy użytkownik się porusza (jak GPS w samochodzie).
  • clearWatch()- Zatrzymuje watchPosition()metodę.

Poniższy przykład przedstawia watchPosition()metodę. Aby to przetestować, potrzebujesz dokładnego urządzenia GPS (takiego jak smartfon):

Przykład

<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>