Secure contextThis feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
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
navigator.geolocation.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
PositionOptions
object that provides configuration options for the location watch.
Return value
An integer ID that identifies the registered handler. The ID can be passed to the Geolocation.clearWatch()
to unregister the handler.
Examples
var id, target, options;
function success(pos) {
var 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.warn('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
Specification | Status | Comment |
---|---|---|
Geolocation APIThe definition of 'watchPosition()' in that specification. | Recommendation | Initial specification. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
watchPosition
|
Chrome
Full support 5 |
Edge
Full support 12 |
Firefox
Full support 3.5 |
IE
Full support 9 |
Opera
Full support 10.6 |
Safari
Full support 5 |
WebView Android
Full support ≤37 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 11 |
Safari iOS
Full support 5 |
Samsung Internet Android
Full support 1.0 |
Legend
- Full support
- Full support
See also
- Using the Geolocation API
- The interface it belongs to,
Geolocation
, and the way to access it —NavigatorGeolocation.geolocation
. - The opposite operation:
Geolocation.clearWatch()
- A similar method:
Geolocation.getCurrentPosition()
Geolocation.watchPosition() by Mozilla Contributors is licensed under CC-BY-SA 2.5.