Geolocation: Methode getCurrentPosition()
Baseline
Weitgehend verfügbar
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die getCurrentPosition()-Methode der Geolocation-Schnittstelle wird verwendet, um die aktuelle Position des Geräts zu ermitteln.
Beachten Sie, dass diese Funktion neben der Anforderung eines sicheren Kontexts möglicherweise durch die geolocation Permissions-Policy blockiert werden kann und außerdem explizite Zustimmung durch den Benutzer erfordert. Falls erforderlich, wird der Benutzer aufgefordert, wenn diese Methode aufgerufen wird. Der Berechtigungsstatus kann mithilfe der Benutzerberechtigung geolocation in der Permissions API abgefragt werden.
Syntax
getCurrentPosition(success)
getCurrentPosition(success, error)
getCurrentPosition(success, error, options)
Parameter
success-
Eine Callback-Funktion, die ein
GeolocationPosition-Objekt als einzigen Eingabeparameter verwendet. errorOptional-
Eine optionale Callback-Funktion, die ein
GeolocationPositionError-Objekt als einzigen Eingabeparameter verwendet. optionsOptional-
Ein optionales Objekt, das die folgenden Parameter enthält:
maximumAgeOptional-
Ein positiver
long-Wert, der das maximale Alter in Millisekunden eines möglichen zwischengespeicherten Standorts anzeigt, der akzeptabel ist. Wenn auf0gesetzt, bedeutet dies, dass das Gerät keinen zwischengespeicherten Standort verwenden kann und versuchen muss, die tatsächliche aktuelle Position zu ermitteln. Wenn aufInfinitygesetzt, muss das Gerät unabhängig von dessen Alter einen zwischengespeicherten Standort zurückgeben. Standard:0. timeoutOptional-
Ein positiver
long-Wert, der die maximale Zeitspanne (in Millisekunden) darstellt, die dem Gerät erlaubt ist, um eine Position zurückzugeben. Der Standardwert istInfinity, was bedeutet, dassgetCurrentPosition()nicht zurückgibt, bis die Position verfügbar ist. enableHighAccuracyOptional-
Ein boolescher Wert, der angibt, dass die Anwendung die bestmöglichen Ergebnisse erhalten möchte. Wenn
trueund das Gerät in der Lage ist, eine genauere Position bereitzustellen, wird es dies tun. Beachten Sie, dass dies zu langsameren Reaktionszeiten oder erhöhtem Stromverbrauch führen kann (beispielsweise mit einem GPS-Chip auf einem mobilen Gerät). Andererseits kann das Gerät beifalseRessourcen sparen, indem es schneller reagiert und/oder weniger Strom verbraucht. Standard:false.
Rückgabewert
Keiner (undefined).
Beispiele
const options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0,
};
function success(pos) {
const crd = pos.coords;
console.log("Your current position is:");
console.log(`Latitude: ${crd.latitude}`);
console.log(`Longitude: ${crd.longitude}`);
console.log(`More or less ${crd.accuracy} meters.`);
}
function error(err) {
console.warn(`ERROR(${err.code}): ${err.message}`);
}
navigator.geolocation.getCurrentPosition(success, error, options);
Spezifikationen
| Spezifikation |
|---|
| Geolocation> # getcurrentposition-method> |