extension
Utilities related to your extension. Get URLs to resources packages with your extension. Get the Window
object for your extension's pages. Get the values for various settings.
Note: The messaging APIs in this module are deprecated in favor of the equivalent APIs in the runtime
module.
Types
extension.ViewType
- The type of extension view.
Properties
extension.lastError
- Set for the lifetime of a callback if an asynchronous extension API has resulted in an error. If no error has, occurred
lastError
will beundefined
. extension.inIncognitoContext
True
for content scripts running inside incognito tabs, and for extension pages running inside an incognito process. (The latter only applies to extensions with 'split
'incognito_behavior
.)
Functions
extension.getBackgroundPage()
- Returns the
Window
object for the background page running inside the current extension. Returnsnull
if the extension has no background page. extension.getExtensionTabs()
- Returns an array of the JavaScript Window objects for each of the tabs running inside the current extension.
extension.getURL()
- Converts a relative path within an extension install directory to a fully-qualified URL.
extension.getViews()
- Returns an array of the
Window
objects for each of the pages running inside the current extension. extension.isAllowedIncognitoAccess()
- Retrieves the state of the extension's access to Incognito-mode (as determined by the user-controlled 'Allowed in Incognito' checkbox).
extension.isAllowedFileSchemeAccess()
- Retrieves the state of the extension's access to the
file://
scheme (as determined by the user-controlled 'Allow access to File URLs' checkbox). extension.sendRequest()
- Sends a single request to other listeners within the extension.
extension.setUpdateUrlData()
- Sets the value of the ap CGI parameter used in the extension's update URL. This value is ignored for extensions that are hosted in the browser vendor's store.
Events
extension.onRequest
- Fired when a request is sent from either an extension process or a content script.
extension.onRequestExternal
- Fired when a request is sent from another extension.
Browser compatibility
Report problems with this compatibility data on GitHubwebextensions-desktop | webextensions-mobile | |||||
---|---|---|---|---|---|---|
ViewType | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidFull support48 |
ViewType.sidebar | ChromeNo supportNo | EdgeNo supportNo | FirefoxFull support54 | OperaNo supportNo | SafariNo supportNo | Firefox for AndroidNo supportNo |
getBackgroundPage | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidFull support48 |
getExtensionTabs | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaNo supportNo | SafariNo supportNo | Firefox for AndroidNo supportNo |
getURL | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45 | OperaFull supportYes | SafariFull support14 | Firefox for AndroidFull support48 |
getViews | ChromeFull supportYes | EdgeFull support14 | FirefoxFull support45
| OperaFull supportYes | SafariFull support14 | Firefox for AndroidFull support48
|
inIncognitoContext | ChromeFull supportYes | EdgeFull support17 | FirefoxFull support45 | OperaFull supportYes | SafariPartial support14
| Firefox for AndroidFull support48 |
isAllowedFileSchemeAccess | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support48 | OperaFull supportYes | SafariPartial support14
| Firefox for AndroidFull support48 |
isAllowedIncognitoAccess | ChromeFull supportYes | EdgeFull support17 | FirefoxFull support48 | OperaFull supportYes | SafariPartial support14
| Firefox for AndroidFull support48 |
lastError | ChromeFull supportYes | EdgeFull support79 | FirefoxFull support47 | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidFull support48 |
onRequest | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
onRequestExternal | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
sendRequest | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaNo supportNo | SafariNo supportNo | Firefox for AndroidNo supportNo |
setUpdateUrlData | ChromeFull supportYes | EdgeFull support79 | FirefoxNo supportNo | OperaFull supportYes | SafariNo supportNo | Firefox for AndroidNo supportNo |
Legend
- Full support
- Full support
- Partial support
- Partial support
- No support
- No support
- Non-standard. Check cross-browser support before using.
- Deprecated. Not for use in new websites.
- See implementation notes.
The compatibility table on 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.
Example extensions
- beastify
- cookie-bg-picker
- find-across-tabs
- imagify
- notify-link-clicks-i18n
- proxy-blocker
- user-agent-rewriter
Acknowledgements
This API is based on Chromium's chrome.extension
API. This documentation is derived from extension.json
in the Chromium code.
Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.