pageAction

A page action is shown as a clickable icon inside the browser's address bar. You can listen for clicks on the icon, or can specify a popup that will open when the icon is clicked. Page actions are for actions that are only relevant to particular pages. If your icon should always be available, use a browser action instead.

If you specify a popup, you can define its contents and behavior using HTML, CSS and JavaScript, just like a normal web page. JavaScript running in the popup gets access to all the same WebExtension APIs as your background scripts.

You can define most of a page action's properties declaratively using the page_action key in manifest.json, but can also redefine them programmatically using this API.

Types

pageAction.ImageDataType
Pixel data for an image.

Functions

pageAction.show()
Shows the page action for a given tab.
pageAction.hide()
Hides the page action for a given tab.
pageAction.setTitle()
Sets the title of the page action. This is displayed in a tooltip over the page action.
pageAction.getTitle()
Gets the title of the page action.
pageAction.setIcon()
Sets the icon for the page action.
pageAction.setPopup()
Sets the HTML for the page action's popup.
pageAction.getPopup()
Gets the HTML for the page action's popup.

Events

pageAction.onClicked
Fired when a page action icon is clicked. This event will not fire if the page action has a popup.

Browser compatibility

EdgeFirefoxChromeOpera
ImageDataType?45.0Yes33
getPopup?45.0Yes33
getTitle?45.0Yes33
hide?45.0Yes33
onClicked?45.0Yes33
setIcon?45.0Yes33
setPopup?45.0Yes33
setTitle?45.0Yes33
show?45.0Yes33
Firefox
ImageDataTypeNo
getPopupNo
getTitleNo
hideNo
onClickedNo
setIconNo
setPopupNo
setTitleNo
showNo

Chrome incompatibilities

None.

Example add-ons

Acknowledgements

This API is based on Chromium's chrome.pageAction API. This documentation is derived from page_action.json in the Chromium code.

Document Tags and Contributors

 Contributors to this page: wbamberg, kmaglione
 Last updated by: wbamberg,