PermissionStatus: change event

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Note: This feature is available in Web Workers.

The change event of the PermissionStatus interface fires whenever the PermissionStatus.state property changes.

Syntax

Use the event name in addEventListener():

js
addEventListener("change", (event) => { })

Alternatively, assign to the event handler property of the interface:

js
onchange = (event) => { }

Event type

A generic Event.

Example

js
navigator.permissions
  .query({ name: "geolocation" })
  .then((permissionStatus) => {
    console.log(`geolocation permission state is ${permissionStatus.state}`);
    permissionStatus.onchange = () => {
      console.log(
        `geolocation permission state has changed to ${permissionStatus.state}`,
      );
    };
  });

Specifications

Specification
Permissions
# dom-permissionstatus-onchange

Browser compatibility