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.chargingRead only- A Boolean value indicating whether or not the battery is currently being charged.
BatteryManager.chargingTimeRead 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.dischargingTimeRead only- A number representing the remaining time in seconds until the battery is completely discharged and the system will suspend.
BatteryManager.levelRead 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
chargingchangeevent; This event is sent when the battery charging state is updated. BatteryManager.onchargingtimechange- A handler for the
chargingtimechangeevent; This event is sent when the battery charging time is updated BatteryManager.ondischargingtimechange- A handler for the
dischargingtimechangeevent; This event is sent when the battery discharging time is updated. BatteryManager.onlevelchange- A handler for the
levelchangeevent; 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] |
Not supported | 25 | Not supported |
| Feature | Android | Android Webview | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | Chrome for Android |
|---|---|---|---|---|---|---|---|
| Basic support | Not supported | 40.0 | 10.0 (10) moz 16.0 (16)[1] |
Not supported | 25[2] | Not supported | 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.