Latest web development tutorials

HTML5 geopositioning

HTML5 Geolokalizacja (geopositioning) używane do zlokalizowania położenia użytkownika.


Zlokalizuj pozycji użytkownika

HTML5 API geolokalizacji, aby uzyskać lokalizację użytkownika.

W świetle tej funkcji może naruszać prywatność użytkowników, chyba że użytkownik zgadza się inaczej, informacje o lokalizacji użytkownika nie jest dostępna.


Pomoc Browser

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Internet Explorer 9+, Firefox, Chrome, Safari i Opera obsługa geolokalizacji (położenie geograficzne).

Uwaga: Geolokalizacja (geopositioning) dla urządzeń z GPS, takich jak iPhone, geopositioning dokładniejsze.


HTML5 - Wykorzystanie kierowania geograficznego

Użyj metody getCurrentPosition (), aby uzyskać lokalizację użytkownika.

Poniższy przykład jest prostym przykładem geolokalizacja, użytkownik może powrócić do szerokości i długości geograficznej lokalizacji:

Przykłady

var x = document.getElementById ( "demo");
Funkcja getLocation ()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition (showPosition);
}
więcej
{
x.innerHTML = "Ta przeglądarka nie obsługuje coraz lokalizację.";
}
}

Funkcja showPosition (pozycja)
{
x.innerHTML = "Lat:" + position.coords.latitude +
"Największa Długość:" + position.coords.longitude;
}

Spróbuj »

Przykłady analizy:

  • Jest testowane na geopositioning
  • Jeśli obsługiwana, należy uruchomić metodę getCurrentPosition (). Jeśli nie, to wyświetla komunikat dla użytkownika.
  • Jeśli getCurrentPosition () się powiedzie, funkcja zwraca parametrów wyszczególnionych w pozycji współrzędnych docelowych showPosition
  • showPosition () funkcja pobiera i wyświetla długość i szerokość geograficzną

Powyższy przykład jest bardzo prosty skrypt geopositioning, obsługi błędów.


Obsługa błędów i odrzucone

Sposób drugi parametr getCurrentPosition () do obsługi błędów. Określa ona, gdy funkcja get uruchomić, gdy lokalizacja użytkownika nie powiodło się:

Przykłady

Funkcja showError (błąd)
{
Przełącznik (error.code)
{
Sprawa error.PERMISSION_DENIED:
x.innerHTML = "user odmówił dostać zapytanie o pozycję."
break;
Sprawa error.POSITION_UNAVAILABLE:
x.innerHTML = "informacje o lokalizacji nie jest dostępna."
break;
Sprawa error.TIMEOUT:
x.innerHTML = "lokalizacja żądanie użytkownika timed out".
break;
Sprawa error.UNKNOWN_ERROR:
x.innerHTML = "Nieznany błąd".
break;
}
}

Spróbuj »

Kod błędu:

  • Odmowa dostępu - użytkownik nie może geopositioning
  • Pozycja niedostępna - Nie można uzyskać aktualną pozycję
  • Timeout - Przekroczono limit czasu operacji

Pokaż wyniki w mapie

Aby wyświetlić wyniki na mapie, trzeba dostępu może korzystać z szerokości i długości geograficznej serwisów mapowych, takich jak Google Maps czy Baidu mapie:

Przykłady

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

var img_url = "http://maps.googleapis.com/maps/api/staticmap?center="
+ Latlon + "& zoom = 14 & size = 400x300 & Czujnik = false";
document.getElementById ( "mapnik") innerHTML = "<img src = '" + img_url + ""> ".;
}

Spróbuj »

W powyższym przykładzie, używamy szerokości i długości geograficznej danych zwracanych przez położenie wyświetlacza (za pomocą obrazów statycznych) w Google Maps.

skrypt Google Maps
Powyższy związek pokazuje, jak użyć skryptu do wyświetlania interaktywną mapę z markerem, zoom i opcje przeciągania.


Informacji podanych lokalizacji

Ta strona pokazuje, jak wyświetlić lokalizację użytkownika na mapie. Jednak informacje geolokalizacji dla danej lokalizacji jest również bardzo przydatne.

Przykład:

  • Aktualizacja informacji lokalnej
  • Pokaż interesujące miejsca w okolicy użytkownika
  • interaktywny system nawigacji samochodowej (GPS)

getCurrentPosition () Metoda - dane powrotu

T w przypadku powodzenia, metody getCurrentPosition () zwraca obiekt. Zawsze zwraca właściwości szerokości, długości i dokładności. Jeśli to możliwe, następujące dodatkowe nieruchomość jest zwracana.

属性 描述
coords.latitude 十进制数的纬度
coords.longitude 十进制数的经度
coords.accuracy 位置精度
coords.altitude 海拔,海平面以上以米计
coords.altitudeAccuracy 位置的海拔精度
coords.heading 方向,从正北开始以度计
coords.speed 速度,以米/每秒计
timestamp 响应的日期/时间


Geolokalizacja obiektu - inne ciekawe sposoby

watchPosition () - Zwraca bieżącą lokalizację użytkownika i nadal powrotu zaktualizowane stanowisko (jak GPS w samochodzie), kiedy użytkownik.

Sposób zatrzymania watchPosition () - clearWatch ()

Poniższy przykład ilustruje sposób watchPosition (). W przeglądarce musi być dokładny urządzenia GPS w celu przetestowania przypadków (takich jak iPhone):

Przykłady

var x = document.getElementById ( "demo");
Funkcja getLocation ()
{
if (navigator.geolocation)
{
navigator.geolocation.watchPosition (showPosition);
}
więcej
{
x.innerHTML = "Ta przeglądarka nie obsługuje coraz lokalizację.";
}
}
Funkcja showPosition (pozycja)
{
x.innerHTML = "Lat:" + position.coords.latitude +
"Największa Długość:" + position.coords.longitude;
}

Spróbuj »