このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

action

ブラウザーツールバーのボタンクリックをリッスンしたり、属性の取得や改変を行ったりします。 manifest.json の action キーで設定されます。

メモ: この API は Manifest V3 あるいは以降のバージョンで利用可能です。Manifest V2 の browserAction や Chrome や Safari での pageAction APIの代替です。

browser actionはブラウザーツールバーのボタンを指します。

ボタンとポップアップの関連付けができます。ウェブページのようにポップアップを HTML や CSS, JavaScript で記述できます。ポップアップ内部で動く Javascript はバックグランドスクリプトと同じ WebExtension API へのアクセスを持ちますが、グローバルコンテキストは現在ブラウザー上で表示されているウェブページのではなく、ポップアップのコンテキストになります。 ウェブページに作用させたい場合、 messages を通した操作する必要があります。

ポップアップを明示した場合、ユーザーがクリックした際にポップアップが出現しコンテンツが読み込まれます。 ポップアップを明示しない場合には、ユーザーがアイコンをクリックしたときに拡張機能に対してイベントが発火されます。

ボタンはコンテキストメニューも持ちます。このメニューには action menus.ContextType を利用する menus API を用いてアイテムの追加が可能です。

action API では、次のことが可能です。

  • action.onClicked を使って、アイコンのクリックをリッスンします。
  • アイコンやタイトル、ポップなどのアイコンのプロパティを読み書きする。タブ間で共通の変更を加えることができます。あるいは追加の引数としてタブ ID を渡すことで個別のタブへの設定も可能です。

型情報

action.ColorArray

RGBA で定義される 0 から 255 までの 4 つの整数を含む配列です。

action.ImageDataType

画像のピクセルデータ。 ImageData のオブジェクトである必要があります。(例: <canvas> からの要素)

関数

action.setTitle()

ブラウザーアクションにタイトルを設定します。ツールチップ上に表示されます。

action.getTitle()

ブラウザーアクションのタイトルを取得します。

action.setIcon()

ブラウザーアクションのアイコンを設定します。

action.setPopup()

ユーザーがブラウザーアクションのアイコンをクリックした時に、ポップアップとして表示される HTML ドキュメントを設定します。

action.getPopup()

ブラウザーアクションのポップアップの HTML ドキュメントを取得します。

action.openPopup()

ブラウザーアクションのポップアップを表示します。

action.setBadgeText()

ブラウザーアクションのバッジ文字列を設定します。バッジはアイコンの上部に表示されます。

action.getBadgeText()

ブラウザーアクションのバッジ文字列を取得します。

action.setBadgeBackgroundColor()

バッジの背景色を設定します。

action.getBadgeBackgroundColor()

バッジの背景色を取得します。

action.setBadgeTextColor()

バッジの文字色を設定します。

action.getBadgeTextColor()

バッジの文字色を取得します。

action.getUserSettings()

ブラウザーアクションへのユーザー指定設定を取得します。

action.enable()

タブへのブラウザーアクションを有効化します。初期設定では全てのタブに対してブラウザーアクションが有効化されています。

action.disable()

タブのブラウザーアクションを無効化します。これはタブがアクティブでもクリックできないことを意味します。

action.isEnabled()

ブラウザーアクションが有効かどうかを検証しその値を返します。

イベント

action.onClicked

ブラウザーアクションのアイコンがクリックされると発火します。このイベントはブラウザーアクションがポップアップを持っている場合発火しません。

ブラウザーの互換性

メモ: この API は Chromium の chrome.action API に基づいています。 この文書は Chromium プログラムの action.json から派生します。