Accelerometer

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The Accelerometer interface of the Sensor APIs provides on each reading the acceleration applied to the device along all three axes.

To use this sensor, the user must grant permission to the 'accelerometer', device sensor through the Permissions API.

If a feature policy blocks the use of a feature, it is because your code is inconsistent with the policies set on your server. This is not something that would ever be shown to a user. The Feature-Policy HTTP header article contains implementation instructions.

EventTarget Sensor Accelerometer

Constructor

Accelerometer() Experimental

Creates a new Accelerometer object.

Properties

In addition to the properties listed below, Accelerometer inherits properties from its parent interfaces, Sensor and EventTarget.

Accelerometer.x Read only Experimental

Returns a double containing the acceleration of the device along the device's x axis.

Accelerometer.y Read only Experimental

Returns a double containing the acceleration of the device along the device's y axis.

Accelerometer.z Read only Experimental

Returns a double containing the acceleration of the device along the device's z axis.

Methods

Accelerometer doesn't have own methods. However, it inherits methods from its parent interfaces, Sensor and EventTarget.

Events

Accelerometer doesn't have own events. However, it inherits events from its parent interface, Sensor.

Example

Acceleration is typically read in the reading event callback. In the example below this occurs sixty times a second.

const acl = new Accelerometer({ frequency: 60 });
acl.addEventListener("reading", () => {
  console.log(`Acceleration along the X-axis ${acl.x}`);
  console.log(`Acceleration along the Y-axis ${acl.y}`);
  console.log(`Acceleration along the Z-axis ${acl.z}`);
});

acl.start();

Specifications

Specification
Accelerometer
# accelerometer-interface

Browser compatibility

BCD tables only load in the browser