This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The PermissionStatus
interface of the Permissions API provides the state of an object and an event handler for monitoring changes to said state.
Properties
PermissionStatus.state
Read only- Returns the state of a requested permission; one of
'granted'
,'denied'
, or'prompt'
. PermissionStatus.status
Read only- Returns the state of a requested permission; one of
'granted'
,'denied'
, or'prompt'
. Later versions of the specification replace this withPermissionStatus.state
.
Event Handler
PermissionStatus.onchange
- An event called whenever
PermissionStatus.status
changes.
Example
navigator.permissions.query({name:'geolocation'}).then(function(permissionStatus) { console.log('geolocation permission status is ', permissionStatus.state); permissionStatus.onchange = function() { console.log('geolocation permission status has changed to ', this.state); }; });
Specification
Specification | Status | Comment |
---|---|---|
Permissions The definition of 'PermissionStatus' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
PermissionStatus | Chrome Full support 43 | Edge Full support 79 | Firefox Full support 46 | IE No support No | Opera Full support Yes | Safari No support No | WebView Android No support No | Chrome Android Full support 43 | Firefox Android Full support 46 | Opera Android Full support Yes | Safari iOS No support No | Samsung Internet Android Full support 4.0 |
onchange | Chrome Full support 43 | Edge Full support 79 | Firefox Full support 46 | IE No support No | Opera Full support Yes | Safari No support No | WebView Android No support No | Chrome Android Full support 43 | Firefox Android Full support 46 | Opera Android Full support Yes | Safari iOS No support No | Samsung Internet Android Full support 4.0 |
state | Chrome
Full support
44
| Edge Full support 79 | Firefox Full support 46 | IE No support No | Opera Full support Yes | Safari No support No | WebView Android No support No | Chrome Android
Full support
44
| Firefox Android Full support 46 | Opera Android Full support Yes | Safari iOS No support No | Samsung Internet Android Full support 4.0 |
Legend
- Full support
- Full support
- No support
- No support
- Experimental. Expect behavior to change in the future.
- Experimental. Expect behavior to change in the future.
- Uses a non-standard name.
- Uses a non-standard name.