The AmbientLightSensor
interface of the Sensor APIs returns the current light level or illuminance of the ambient light around the hosting device.
To use this sensor, the user must grant permission to the 'ambient-light-sensor'
device sensor through the Permissions API.
This feature may be blocked by a Permissions Policy set on your server.
Constructor
-
AmbientLightSensor()
Experimental
-
Creates a new AmbientLightSensor
object.
Instance properties
-
AmbientLightSensor.illuminance
Experimental
-
Returns the current light level in lux of the ambient light level around the hosting device.
Instance methods
AmbientLightSensor
doesn't have own methods. However, it inherits methods from its parent interfaces, Sensor
and EventTarget
.
Events
AmbientLightSensor
doesn't have own events. However, it inherits events from its parent interface, Sensor
.
Example
if ("AmbientLightSensor" in window) {
const sensor = new AmbientLightSensor();
sensor.addEventListener("reading", (event) => {
console.log("Current light level:", sensor.illuminance);
});
sensor.addEventListener("error", (event) => {
console.log(event.error.name, event.error.message);
});
sensor.start();
}
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
AmbientLightSensor |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
No |
No |
No |
AmbientLightSensor |
56 |
79 |
No |
No |
43 |
No |
No |
56 |
No |
No |
No |
No |
illuminance |
56In Chrome 79, this method stopped returning floats and returned integers to avoid fingerprinting. |
79In Edge 79, this method stopped returning floats and returned integers to avoid fingerprinting. |
No |
No |
43In Opera 66, this method stopped returning floats and returned integers to avoid fingerprinting. |
No |
No |
56In Chrome 79, this method stopped returning floats and returned integers to avoid fingerprinting. |
No |
No |
No |
No |