Наши волонтёры ещё не перевели данную статью на Русский. Присоединяйтесь к нам и помогите сделать эту работу!
Вы можете также прочитать эту статью на English (US).

Secure context
This 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.

This method returns a watch ID value that then can be used to unregister the handler by passing it to the Geolocation.clearWatch() method.

Syntax

id = navigator.geolocation.watchPosition(success[, error[, options]])

Parameters

success
A callback function that takes a Position object as an input parameter.
error Optional
An optional callback function that takes a PositionError object as an input parameter.
options Optional
An optional PositionOptions object that provides configuration options for the location watch.

Example

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

If your application is running on Firefox OS, please take a look at geolocation wake lock to keep your application getting position updates while in the background or screen off.

Specifications

Specification Status Comment
Geolocation API
The definition of 'Geolocation.watchPosition()' in that specification.
Recommendation Initial specification.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support5 Yes3.59

16

10.6 — 15

Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support Yes ? Yes415 Yes Yes

See also

Метки документа и участники

Обновлялась последний раз: connorshea,