This specification defines a means to receive events that correspond to changes in ambient temperature.


The AmbientTemperatureEvent interface provides web developers information about the ambient temperature levels near the hosting device.

This is achieved by interrogating a thermometer or similar detectors of a device.

Use Cases


This specification defines conformance criteria that apply to a single product: the user agent that implements the interfaces that it contains.


The EventHandler interface represents a callback function used for event handlers as defined in [[!HTML5]].

The concepts queue a task and fires a simple event are defined in [[!HTML5]].

The terms event handlers and event handler event types are defined in [[!HTML5]].

The concepts create an event and fire an event are defined in [[!DOM4]].

The current temperature is a value that represents the ambient temperature in degrees Celsius.

Security and privacy considerations


The HTML5 specification [[!HTML5]] defines a Window interface, which this specification extends:

attribute EventHandler ontemperature

The ontemperature event handler and its corresponding event handler event type ambienttemperature MUST be supported as an IDL attribute by all objects implementing the Window interface.

AmbientTemperatureEvent Interface

readonly attribute double f
The current temperature expressed as fahrenheit.
readonly attribute double c
The current temperature as celsius.
readonly attribute double k
The current temperature expressed as kelvin. When getting,
double value

When a user agent is required to fire an ambient temperature event, the user agent MUST run the following steps:

  1. Create an event that uses the AmbientTemperatureEvent interface, with the name temperature, which bubbles, is not cancelable, and has no default action, that also meets the following conditions:
    1. If the implementation is unable to report the current ambient temperature, initialize the c attribute to positive Infinity, otherwise initialize the attribute to the current ambient temperature.
  2. Queue a task to dispatch the newly created event at the Window object.

When the current temperature changes, the user agent MUST fire a ambient temperature event.

The definition of granularity i.e. how often the event is fired is left to the implementation. Implementations may fire the event if they have reason to believe that the page does not have sufficiently fresh data.

Event handlers

The following are the event handlers (and their corresponding event handler event types) that MUST be supported as attributes by the Window object:

event handler event handler event type
ontemperature temperature