--- title: Geolocation.watchPosition() slug: Web/API/Geolocation/watchPosition translation_of: Web/API/Geolocation/watchPosition ---

{{ APIref("Geolocation API") }}

El método Geolocation.watchPosition() se utiliza para registrar una función de controlador que se llamará automáticamente cada vez que la posición del dispositivo cambia. También puede, opcionalmente, especificar una función de devolución de la gestión de errores.

Este método devuelve un valor de ID de seguimiento que se puede utilizar para anular el registro del controlador pasándolo al método Geolocation.clearWatch().

Sintaxis

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

Parámetros

success
Una función de devolución de llamada que toma un objeto de posición({{domxref("Position")}}) como parámetro de entrada.
error {{optional_inline}}
Una función de devolución de llamada opcional que toma un objeto {{domxref("PositionError")}} como parámetro de entrada.
options {{optional_inline}}
Un objeto opcional {{domxref("PositionOptions")}}.

Ejemplo

var id, target, option;

function success(pos) {
  var crd = pos.coords;

  if (target.latitude === crd.latitude && target.longitude === crd.longitude) {
    console.log('Congratulation, you reach 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);

Especificacines

Especificación Estado Comentario
{{SpecName('Geolocation', '#watch-position', 'Geolocation.watchPosition()')}} {{Spec2('Geolocation')}} Especificación inicial

Compatibilidad de navegador

{{ CompatibilityTable() }}

Característica Chrome Firefox (Gecko) Internet Explorer Opera Safari
Soporte básico 5 {{CompatGeckoDesktop("1.9.1")}} 9 10.60
Eliminado en 15.0
Reintroducido en 16.0
5
Característica Android Chrome para Android Firefox Mobil (Gecko) IE Mobile Opera Mobil Safari Mobile
Soporte básico {{CompatUnknown()}} {{CompatUnknown()}} {{CompatGeckoMobile("4")}} {{CompatUnknown()}} 10.60 {{CompatUnknown()}}

Ver también