A BrowserSetting is an object representing a browser setting.

It provides methods to set and get the setting's underlying value, to clear any change you've made to it, and to listen for changes to its value.

Note that while this object is based on the ChromeSetting type, this object does not distinguish between setting the value in normal browsing windows and in private browsing windows. This means that all parts of the API relating to private browsing (such as the scope option to ChromeSetting.set()) are not implemented.


Get the current value of the setting, and an enumeration representing how the setting is currently controlled.
Set the setting to a new value.
Clear any change made to the setting by this extension.


Fired when the setting's value changes.

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxOperaFirefox for Android
BrowserSettingChrome Full support YesEdge No support NoFirefox Full support 54Opera Full support YesFirefox Android Full support 54
onChangeChrome Full support YesEdge No support NoFirefox No support NoOpera Full support YesFirefox Android No support No


Full support  
Full support
No support  
No support

This API is based on Chromium's chrome.types API.

Document Tags and Contributors

Contributors to this page: mdnwebdocs-bot, fscholz, wbamberg, arai, andrewtruongmoz, jwhitlock
Last updated by: mdnwebdocs-bot,