BatteryManager

The BatteryManager interface provides ways to get information about the system's battery charge level.

The navigator.getBattery() method returns a battery promise that is resolved in a BatteryManager interface which you can use to interact with the Battery Status API.

Properties

BatteryManager.charging Read only
A Boolean value indicating whether or not the battery is currently being charged.
BatteryManager.chargingTime Read only
A number representing the remaining time in seconds until the battery is fully charged, or 0 if the battery is already fully charged.
BatteryManager.dischargingTime Read only
A number representing the remaining time in seconds until the battery is completely discharged and the system will suspend.
BatteryManager.level Read only
A number representing the system's battery charge level scaled to a value between 0.0 and 1.0.

Event handlers

BatteryManager.onchargingchange
A handler for the chargingchange event; This event is sent when the battery charging state is updated.
BatteryManager.onchargingtimechange
A handler for the chargingtimechange event; This event is sent when the battery charging time is updated
BatteryManager.ondischargingtimechange
A handler for the dischargingtimechange event; This event is sent when the battery discharging time is updated.
BatteryManager.onlevelchange
A handler for the levelchange event; This event is sent when the battery level is updated.

Methods

Inherited from EventTarget:

EventTarget.addEventListener()
Register an event handler of a specific event type on the EventTarget.
EventTarget.removeEventListener()
Removes an event listener from the EventTarget.
EventTarget.dispatchEvent()
Dispatch an event to this EventTarget.

Additional methods for Mozilla chrome code

Mozilla extensions for use by JS-implemented event targets to implement on* properties. See also WebIDL bindings.

  • void setEventHandler(DOMString type, EventHandler handler)
  • EventHandler getEventHandler(DOMString type)

Specifications

Specification Status Comment
Battery Status API Candidate Recommendation Initial definition

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 39.0 10 (10) moz
16 (16)[1]
52 (52)[3]
No support 25 No support
Feature Android Android Webview Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support No support 40.0 10.0 (10) moz
16.0 (16)[1]
52.0 (52)[3]
No support 25[2] No support 42.0[2]

[1] Disabled by default in Firefox 10.0, but can be enabled setting the preference dom.battery.enabled to true. Starting with Firefox 11.0, mozBattery is enabled by default. The Battery API is currently supported on Android, Windows, and Linux with UPower installed. Support for MacOS is available starting with Gecko 18.0 (Firefox 18.0 / Thunderbird 18.0 / SeaMonkey 2.15). Firefox also provide support for the deprecated navigator.battery.

[2] Values for BatteryManager.chargingTime and BatteryManager.dischargingTime are always equal to Infinity.

[3] From Firefox 52 onwards, the Battery Status API is only available in chrome/privileged code.

See also

Document Tags and Contributors

 Last updated by: chrisdavidmills,