Geolocation: watchPosition() method
The Geolocation
method watchPosition()
method is used to register a handler function that will be called automatically each time the position of the device changes. You can also, optionally, specify an error handling callback function.
Syntax
watchPosition(success)
watchPosition(success, error)
watchPosition(success, error, options)
Parameters
-
success
-
A callback function that takes a GeolocationPosition
object as an input parameter.
error
Optional
-
An optional callback function that takes a GeolocationPositionError
object as an input parameter.
options
Optional
-
An optional object that provides configuration options for the location watch. See Geolocation.getCurrentPosition()
for more details on possible options.
Return value
An integer ID that identifies the registered handler. The ID can be passed to the Geolocation.clearWatch()
to unregister the handler.
Examples
let id;
let target;
let options;
function success(pos) {
const crd = pos.coords;
if (target.latitude === crd.latitude && target.longitude === crd.longitude) {
console.log("Congratulations, you reached the target");
navigator.geolocation.clearWatch(id);
}
}
function error(err) {
console.error(`ERROR(${err.code}): ${err.message}`);
}
target = {
latitude: 0,
longitude: 0,
};
options = {
enableHighAccuracy: false,
timeout: 5000,
maximumAge: 0,
};
id = navigator.geolocation.watchPosition(success, error, options);
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
watchPosition |
5 |
12 |
3.5 |
9 |
10.6 |
5 |
≤37 |
18 |
4 |
11 |
≤3 |
1.0 |
See also