Page Actions
For information on how to use experimental APIs, see the chrome.experimental.* APIs page.
Page Actions
Use page actions to put icons inside the address bar.
Page actions represent actions
that can be taken on the current page,
but that aren't applicable to all pages.
Some examples:
- Subscribe to this page's RSS feed
- Make a slideshow out of this page's photos
The RSS icon in the following screenshot
represents a page action
that lets you subscribe to
the RSS feed for the current page.
If you want the extension's icon to always be visible,
use a browser action instead.
Note:
Packaged apps cannot use page actions.
Manifest
Register your page action in the
extension manifest
like this:
{
"name": "My extension",
...
"page_action": {
"default_icon": "icons/foo.png", // optional
"default_title": "Do action", // optional; shown in tooltip
"default_popup": "popup.html" // optional
},
...
}
Parts of the UI
Like browser actions,
page actions can have an icon,
a tooltip, and popup;
they can't have badges, however.
In addition, page actions can appear and disappear.
You can find information about icons, tooltips, and popups
by reading about the
browser action UI.
You make a page action appear and disappear using the
show() and
hide() methods, respectively.
By default, a page action is hidden.
When you show it, you specify the tab
in which the icon should appear.
The icon remains visible
until the tab is closed
or starts displaying a different URL
(because the user clicks a link, for example).
Tips
For the best visual impact,
follow these guidelines:
- Do use page actions
for features that make sense
for only a few pages.
- Don't use page actions
for features that make sense
for most pages.
Use browser actions instead.
- Don't constantly animate your icon.
That's just annoying.
Examples
You can find simple examples of using page actions in the
examples/api/pageAction
directory.
For other examples and for help in viewing the source code, see
Samples.
API reference: chrome.pageAction
Properties
getLastError
chrome.extensionlastError
Methods
hide
void
chrome.pageAction.hide(, integer
tabId)
Undocumented.
Hides the page action.
Parameters
-
tabId
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- The id of the tab for which you want to modify the page action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
Returns
Callback function
The callback parameter should specify a function
that looks like this:
If you specify the callback parameter, it should
specify a function that looks like this:
function(Type param1, Type param2) {...};
This function was added in version .
If you require this function, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
setIcon
void
chrome.pageAction.setIcon(, object
details)
Undocumented.
Sets the icon for the page action. The icon can be specified either as the path to an image file or as the pixel data from a canvas element. Either the path or the imageData property must be specified.
Parameters
-
details
(
optional
enumerated
Type
array of
object
)
-
Undocumented.
-
Description of this parameter from the json schema.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
tabId
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- The id of the tab for which you want to modify the page action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
imageData
(
optional
enumerated
Type
array of
ImageData
)
-
Undocumented.
- Pixel data for an image. Must be an ImageData object (for example, from a canvas element).
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
path
(
optional
enumerated
Type
array of
string
)
-
Undocumented.
- Relative path to an image in the extension to show in the browser action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
iconIndex
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- Deprecated. The zero-based index into the icons vector specified in the manifest.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
-
-
Returns
Callback function
The callback parameter should specify a function
that looks like this:
If you specify the callback parameter, it should
specify a function that looks like this:
function(Type param1, Type param2) {...};
This function was added in version .
If you require this function, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
setPopup
void
chrome.pageAction.setPopup(, object
details)
Undocumented.
Sets the html document to be opened as a popup when the user clicks on the page action's icon.
Parameters
-
details
(
optional
enumerated
Type
array of
object
)
-
Undocumented.
-
Description of this parameter from the json schema.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
tabId
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- The id of the tab for which you want to modify the page action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
popup
(
optional
enumerated
Type
array of
string
)
-
Undocumented.
- The html file to show in a popup. If set to the empty string (''), no popup is shown.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
-
-
Returns
Callback function
The callback parameter should specify a function
that looks like this:
If you specify the callback parameter, it should
specify a function that looks like this:
function(Type param1, Type param2) {...};
This function was added in version 5.0.308.0.
If you require this function, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
setTitle
void
chrome.pageAction.setTitle(, object
details)
Undocumented.
Sets the title of the page action. This is displayed in a tooltip over the page action.
Parameters
-
details
(
optional
enumerated
Type
array of
object
)
-
Undocumented.
-
Description of this parameter from the json schema.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
tabId
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- The id of the tab for which you want to modify the page action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
title
(
optional
enumerated
Type
array of
string
)
-
Undocumented.
- The tooltip string.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
-
-
-
Returns
Callback function
The callback parameter should specify a function
that looks like this:
If you specify the callback parameter, it should
specify a function that looks like this:
function(Type param1, Type param2) {...};
This function was added in version .
If you require this function, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
show
void
chrome.pageAction.show(, integer
tabId)
Undocumented.
Shows the page action. The page action is shown whenever the tab is selected.
Parameters
-
tabId
(
optional
enumerated
Type
array of
integer
)
-
Undocumented.
- The id of the tab for which you want to modify the page action.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-
Returns
Callback function
The callback parameter should specify a function
that looks like this:
If you specify the callback parameter, it should
specify a function that looks like this:
function(Type param1, Type param2) {...};
This function was added in version .
If you require this function, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
Events
onClicked
chrome.pageAction.onClicked.addListener(function(Tab tab) {...});
Undocumented.
Fired when a page action icon is clicked. This event will not fire if the page action has a popup.
Parameters
-
tab
(
optional
enumerated
Tab
array of
paramType
)
-
Undocumented.
-
Description of this parameter from the json schema.
-
This parameter was added in version
.
You must omit this parameter in earlier versions,
and you may omit it in any version. If you require this
parameter, the manifest key
minimum_chrome_version
can ensure that your extension won't be run in an earlier browser version.
-
-
-
-