tabs
====

ブラウザーのタブシステムとやりとりします。

この API を使って開いているタブの一覧を取得したり、いろいろな条件でフィルターしたり、タブを開き、更新し、移動し、再読み込みし、削除できます。この API ではタブのコンテンツに直接アクセスできませんが、JavaScript と CSS をタブに挿入することは、`tabs.executeScript()` や `tabs.insertCSS()` (en-US) API を使ってできます。

この API の大半の使用に特別なパーミッションは要りませんが:

* `Tab.url` `Tab.title` `Tab.favIconUrl`, のアクセスには "tabs" パーミッションが必要です。また Firefox では URL による`問い合わせ`をするのにも "tabs" が必要です。
* `tabs.executeScript()` や `tabs.insertCSS()` (en-US) を使うには、そのタブの host パーミッションが必要です。

あるいは、これらのパーミッションを一時的に取得することもできますが、それは現在アクティブなタブで明示的なユーザーアクションへの応答する場合のみで、"activeTab" パーミッションを要求することで可能です。

タブ操作の多くはタブ ID を使います。タブ ID はブラウザーセッションの単一のタブごとにユニークである保証がされています。ブラウザーが再起動したら、タブ ID を再利用できて、実際そうします。ブラウザーの再起動をまたいでタブ情報を関連づけるには `sessions.setTabValue()` (en-US) を使います。

型
-

`tabs.MutedInfoReason`

タブがミュートされている、またはミュートが解除されている理由を示す。

`tabs.MutedInfo`

タブがミュートされているかを示す真理値と、最後の変更の理由からなるオブジェクト。

`tabs.PageSettings` (en-US)

`tabs.saveAsPDF()` (en-US)メソッドにおいて、どのように PDF を描画するかを制御する。

`tabs.Tab`

タブについての情報を含む。

`tabs.TabStatus` (en-US)

タブの読み込み状況を示す。

`tabs.WindowType` (en-US)

タブを所有しているウィンドウのタイプを示す。

`tabs.ZoomSettingsMode` (en-US)

ズームがブラウザーによるものか、拡張機能によるものか、またはズームが許可されていないのかを示す。

`tabs.ZoomSettingsScope` (en-US)

あるページのズームが、同一生成元の別ページにも適用されるか、タブ内でのみかを示す。

`tabs.ZoomSettings` (en-US)

ズーム設定`mode` (en-US), `scope` (en-US)とデフォルトのズーム要因を示す。

プロパティ
-----

`tabs.TAB_ID_NONE` (en-US)

ブラウザーのタブでないタブに対する特殊な ID（Windows の開発ツールなど）。

関数
--

`tabs.captureTab()` (en-US)

あるタブの可視エリアの画像をエンコードしたデータ URI を作成します。

`tabs.captureVisibleTab()`

特定のウィンドウのアクティブなタブの可視エリアの画像をエンコードしたデータ URI を作成します。

`tabs.connect()` (en-US)

あるタブにおいて、バックグラウンドスクリプト（またはその他ポップアップやオプションページのスクリプトなど特権スクリプト）と content scripts 間でのメッセージのやり取り用の経路を確保します。

`tabs.create()`

新しいタブを作る。

`tabs.detectLanguage()` (en-US)

タブのコンテンツの言語を検出する

`tabs.discard()` (en-US)

1 つ以上のタブを破棄する。

`tabs.duplicate()`

タブを複製する。

`tabs.executeScript()`

ページに JavaScript コードを挿入する。

`tabs.get()`

特定のタブについて情報を取り出す。

`tabs.getAllInWindow()` (en-US) 
非推奨

特定のウィンドウ内のすべてのタブについての情報を取り出す。

`tabs.getCurrent()` (en-US)

スクリプトが実行されているタブについての情報を `tabs.Tab` オブジェクトとして取り出す。

`tabs.getSelected()` (en-US) 
非推奨

あるウィンドウにおいてタブが選択されているかを得る。

`tabs.getZoom()` (en-US)

あるタブについてズーム要因を得る。

`tabs.getZoomSettings()` (en-US)

あるタブについてズーム設定を得る。

`tabs.goForward()` (en-US)

可能な場合、次のページへ進む。

`tabs.goBack()` (en-US)

可能な場合、前のページへ戻る。

`tabs.hide()` (en-US) 
Experimental

1 つ以上のタブを隠す。

`tabs.highlight()` (en-US)

1 つ以上のタブをハイライトする。

`tabs.insertCSS()` (en-US)

CSS をページに挿入する。

`tabs.move()` (en-US)

2 つ以上のタブを同じ、あるいは異なるウィンドウの任意のポジションへ移動させる。

`tabs.moveInSuccession()` (en-US)

タブグループの継承関係を編集する。

`tabs.print()` (en-US)

開いているタブのコンテンツを印刷する。

`tabs.printPreview()` (en-US)

開いているタブの印刷プレビューを開く。

`tabs.query()`

特定のプロパティを持つすべてのタブ、またはプロパティが指定されなければすべてのタブを取得します。

`tabs.reload()` (en-US)

タブをリロードする。キャッシュを回避することもできる。

`tabs.remove()`

１つ以上のタブを閉じる。

`tabs.removeCSS()` (en-US)

以前に`tabs.insertCSS()` (en-US)を呼び出して挿入されている CSS を削除する。

`tabs.saveAsPDF()` (en-US)

現在のページを PDF として保存する。

`tabs.sendMessage()` (en-US)

あるタブのコンテンツスクリプトへ、１つのメッセージを送信する。

`tabs.sendRequest()` (en-US) 
非推奨

あるタブのコンテンツスクリプトへ、単一のリクエストを送信する。**非推奨**: 代わりに `tabs.sendMessage()` (en-US) を使用してください。

`tabs.setZoom()` (en-US)

あるタブをズームする。

`tabs.setZoomSettings()` (en-US)

あるタブについてズーム設定をする。

`tabs.show()` (en-US) 
Experimental

`hidden` (en-US)で隠されたタブを表示する。

`tabs.toggleReaderMode()` (en-US)

あるタブについてのリーダーモードへのトグル。

`tabs.update()` (en-US)

新しい URL に案内、もしくはタブの他のプロパティを修正する。

イベント
----

`tabs.onActivated` (en-US)

ウィンドウ内でアクティブなタブが変わったときに発火。このイベントが発火した段階ではまだタブの URL はセットされているとは限らない。

`tabs.onActiveChanged` (en-US) 
非推奨

ウィンドウの中の選択されたタブが変更されたときに発火。**非推奨:** 代わりに`tabs.onActivated` (en-US)を利用してください。

`tabs.onAttached` (en-US)

タブがウィンドウに引っ付けられたとき、例えばウィンドウ間で移動されたときに発火。

`tabs.onCreated`

タブが作られたときに発火。このイベントが発火した段階ではまだタブの URL はセットされているとは限らない。

`tabs.onDetached` (en-US)

タブがウィンドウから切り離されたときに発火。例えば、ウィンドウのない場所へタブを移動させたときなど。

`tabs.onHighlightChanged` (en-US) 
非推奨

ウィンドウ内でハイライトまたは選択されたタブが変更したときに発火。**非推奨:** 代わりに`tabs.onHighlighted` (en-US)を使用してください。

`tabs.onHighlighted` (en-US)

ウィンドウ内でハイライトまたは選択されたタブが変更したときに発火。

`tabs.onMoved` (en-US)

ウィンドウ内にタブが移動したときに発火する。

`tabs.onRemoved` (en-US)

タブが閉じられたときに発火する。

`tabs.onReplaced` (en-US)

プリレンダリングによってタブが他のタブに置き換えられたときに発火。

`tabs.onSelectionChanged` (en-US) 
非推奨

ウィンドウ内で選択されているタブが変わったときに発火。**非推奨:** 代わりに`tabs.onActivated` (en-US)を使用してください。

`tabs.onUpdated` (en-US)

タブが更新されたときに発火する。

`tabs.onZoomChange` (en-US)

タブがズームされたときに発火する。

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Example extensions
------------------

* annotate-page
* apply-css
* beastify
* bookmark-it
* chill-out
* commands
* context-menu-copy-link-with-types
* contextual-identities
* cookie-bg-picker
* devtools-panels
* find-across-tabs
* firefox-code-search
* history-deleter
* imagify
* list-cookies
* menu-demo
* menu-labelled-open
* menu-remove-element
* open-my-page-button
* permissions
* session-state
* store-collected-images
* tabs-tabs-tabs

**メモ:** This API is based on Chromium's `chrome.tabs` API. This documentation is derived from `tabs.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.