1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
|
---
title: tabs
slug: Mozilla/Add-ons/WebExtensions/API/tabs
tags:
- API
- Add-ons
- Extensions
- Interface
- Non-standard
- Reference
- WebExtensions
- tabs
- タブ
translation_of: Mozilla/Add-ons/WebExtensions/API/tabs
---
<div>{{AddonSidebar}}</div>
<p>ブラウザーのタブシステムとやりとりします。</p>
<p>この API を使って開いているタブの一覧を取得したり、いろいろな条件でフィルターしたり、タブを開き、更新し、移動し、再読み込みし、削除できます。この API ではタブのコンテンツに直接アクセスできませんが、JavaScript と CSS をタブに挿入することは、{{WebExtAPIRef("tabs.executeScript()")}} や {{WebExtAPIRef("tabs.insertCSS()")}} API を使ってできます。</p>
<p>この API の大半の使用に特別なパーミッションは要りませんが:</p>
<ul>
<li><code>Tab.url</code> <code>Tab.title</code> <code>Tab.favIconUrl</code>, のアクセスには "tabs" <a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/manifest.json/permissions">パーミッション</a>が必要です。また Firefox では URL による{{WebExtAPIRef("tabs.query", "問い合わせ")}}をするのにも "tabs" が必要です。</li>
<li>{{WebExtAPIRef("tabs.executeScript()")}} や {{WebExtAPIRef("tabs.insertCSS()")}} を使うには、そのタブの <a href="/ja/Add-ons/WebExtensions/manifest.json/permissions#Host_permissions">host パーミッション</a>が必要です。</li>
</ul>
<p>あるいは、これらのパーミッションを一時的に取得することもできますが、それは現在アクティブなタブで明示的なユーザーアクションへの応答する場合のみで、<a href="/ja/Add-ons/WebExtensions/manifest.json/permissions#activeTab_permission">"activeTab" パーミッション</a>を要求することで可能です。</p>
<p>タブ操作の多くはタブ ID を使います。タブ ID はブラウザーセッションの単一のタブごとにユニークである保証がされています。ブラウザーが再起動したら、タブ ID を再利用できて、実際そうします。ブラウザーの再起動をまたいでタブ情報を関連づけるには {{WebExtAPIRef("sessions.setTabValue()")}} を使います。</p>
<h2 id="Types" name="Types">型</h2>
<dl>
<dt>{{WebExtAPIRef("tabs.MutedInfoReason")}}</dt>
<dd>タブがミュートされている、またはミュートが解除されている理由を示す。</dd>
<dt>{{WebExtAPIRef("tabs.MutedInfo")}}</dt>
<dd>タブがミュートされているかを示す真理値と、最後の変更の理由からなるオブジェクト。</dd>
<dt>{{WebExtAPIRef("tabs.PageSettings")}}</dt>
<dd>
<p><a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/API/tabs/saveAsPDF" title="Saves the current page as a PDF. This will open a dialog, supplied by the underlying operating system, asking the user where they want to save the PDF."><code>tabs.saveAsPDF()</code></a>メソッドにおいて、どのように PDF を描画するかを制御する。</p>
</dd>
<dt>{{WebExtAPIRef("tabs.Tab")}}</dt>
<dd>タブについての情報を含む。</dd>
<dt>{{WebExtAPIRef("tabs.TabStatus")}}</dt>
<dd>タブの読み込み状況を示す。</dd>
<dt>{{WebExtAPIRef("tabs.WindowType")}}</dt>
<dd>タブを所有しているウィンドウのタイプを示す。</dd>
<dt>{{WebExtAPIRef("tabs.ZoomSettingsMode")}}</dt>
<dd>ズームがブラウザーによるものか、拡張機能によるものか、またはズームが許可されていないのかを示す。</dd>
<dt>{{WebExtAPIRef("tabs.ZoomSettingsScope")}}</dt>
<dd>あるページのズームが、同一生成元の別ページにも適用されるか、タブ内でのみかを示す。</dd>
<dt>{{WebExtAPIRef("tabs.ZoomSettings")}}</dt>
<dd>ズーム設定{{WebExtAPIRef("tabs.ZoomSettingsMode", "mode")}}, {{WebExtAPIRef("tabs.ZoomSettingsScope", "scope")}}とデフォルトのズーム要因を示す。</dd>
</dl>
<h2 id="Properties" name="Properties">プロパティ</h2>
<dl>
<dt>{{WebExtAPIRef("tabs.TAB_ID_NONE")}}</dt>
<dd>ブラウザーのタブでないタブに対する特殊な ID(Windows の開発ツールなど)。</dd>
</dl>
<h2 id="Functions" name="Functions">関数</h2>
<dl>
<dt>{{WebExtAPIRef("tabs.captureTab()")}}</dt>
<dd>あるタブの可視エリアの画像をエンコードしたデータURIを作成します。</dd>
<dt>{{WebExtAPIRef("tabs.captureVisibleTab()")}}</dt>
<dd>特定のウィンドウのアクティブなタブの可視エリアの画像をエンコードしたデータURI を作成します。</dd>
<dt>{{WebExtAPIRef("tabs.connect()")}}</dt>
<dd>あるタブにおいて、バックグラウンドスクリプト(またはその他ポップアップやオプションページのスクリプトなど特権スクリプト)と <a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/Content_scripts">content scripts</a> 間でのメッセージのやり取り用の経路を確保します。</dd>
<dt>{{WebExtAPIRef("tabs.create()")}}</dt>
<dd>新しいタブを作る。</dd>
<dt>{{WebExtAPIRef("tabs.detectLanguage()")}}</dt>
<dd>タブのコンテンツの言語を検出する</dd>
<dt>{{WebExtAPIRef("tabs.discard()")}}</dt>
<dd>1つ以上のタブを破棄する。</dd>
<dt>{{WebExtAPIRef("tabs.duplicate()")}}</dt>
<dd>タブを複製する。</dd>
<dt>{{WebExtAPIRef("tabs.executeScript()")}}</dt>
<dd>ページに JavaScript コードを挿入する。</dd>
<dt>{{WebExtAPIRef("tabs.get()")}}</dt>
<dd>特定のタブについて情報を取り出す。</dd>
<dt>{{WebExtAPIRef("tabs.getAllInWindow()")}} {{deprecated_inline}}</dt>
<dd>特定のウィンドウ内のすべてのタブについての情報を取り出す。</dd>
<dt>{{WebExtAPIRef("tabs.getCurrent()")}}</dt>
<dd>スクリプトが実行されているタブについての情報を <a href="https://developer.mozilla.org/ja/docs/Mozilla/Add-ons/WebExtensions/API/Tabs/Tab" title="This type contains information about a tab."><code>tabs.Tab</code></a> オブジェクトとして取り出す。</dd>
<dt>{{WebExtAPIRef("tabs.getSelected()")}} {{deprecated_inline}}</dt>
<dd>あるウィンドウにおいてタブが選択されているかを得る。</dd>
<dt>{{WebExtAPIRef("tabs.getZoom()")}}</dt>
<dd>あるタブについてズーム要因を得る。</dd>
<dt>{{WebExtAPIRef("tabs.getZoomSettings()")}}</dt>
<dd>あるタブについてズーム設定を得る。</dd>
<dt>{{WebExtAPIRef("tabs.goForward()")}}</dt>
<dd>可能な場合、次のページへ進む。</dd>
<dt>{{WebExtAPIRef("tabs.goBack()")}}</dt>
<dd>可能な場合、前のページへ戻る。</dd>
<dt>{{WebExtAPIRef("tabs.hide()")}} {{experimental_inline}}</dt>
<dd>1つ以上のタブを隠す。</dd>
<dt>{{WebExtAPIRef("tabs.highlight()")}}</dt>
<dd>1 つ以上のタブをハイライトする。</dd>
<dt>{{WebExtAPIRef("tabs.insertCSS()")}}</dt>
<dd>CSS をページに挿入する。</dd>
<dt>{{WebExtAPIRef("tabs.move()")}}</dt>
<dd>2 つ以上のタブを同じ、あるいは異なるウィンドウの任意のポジションへ移動させる。</dd>
<dt>{{WebExtApiRef("tabs.moveInSuccession()")}}</dt>
<dd>タブグループの継承関係を編集する。</dd>
<dt>{{WebExtAPIRef("tabs.print()")}}</dt>
<dd>開いているタブのコンテンツを印刷する。</dd>
<dt>{{WebExtAPIRef("tabs.printPreview()")}}</dt>
<dd>
<div>開いているタブの印刷プレビューを開く。</div>
</dd>
<dt>{{WebExtAPIRef("tabs.query()")}}</dt>
<dd>特定のプロパティを持つすべてのタブ、またはプロパティが指定されなければすべてのタブを取得します。</dd>
<dt>{{WebExtAPIRef("tabs.reload()")}}</dt>
<dd>タブをリロードする。キャッシュを回避することもできる。</dd>
<dt>{{WebExtAPIRef("tabs.remove()")}}</dt>
<dd>1つ以上のタブを閉じる。</dd>
<dt>{{WebExtAPIRef("tabs.removeCSS()")}}</dt>
<dd>以前に{{WebExtAPIRef("tabs.insertCSS()")}}を呼び出して挿入されているCSSを削除する。</dd>
<dt>{{WebExtAPIRef("tabs.saveAsPDF()")}}</dt>
<dd>現在のページを PDF として保存する。</dd>
<dt>{{WebExtAPIRef("tabs.sendMessage()")}}</dt>
<dd>あるタブのコンテンツスクリプトへ、1つのメッセージを送信する。</dd>
<dt>{{WebExtAPIRef("tabs.sendRequest()")}} {{deprecated_inline}}</dt>
<dd>あるタブのコンテンツスクリプトへ、単一のリクエストを送信する。<strong>非推奨</strong>: 代わりに {{WebExtAPIRef("tabs.sendMessage()")}} を使用してください。</dd>
<dt>{{WebExtAPIRef("tabs.setZoom()")}}</dt>
<dd>あるタブをズームする。</dd>
<dt>{{WebExtAPIRef("tabs.setZoomSettings()")}}</dt>
<dd>あるタブについてズーム設定をする。</dd>
<dt>{{WebExtAPIRef("tabs.show()")}} {{experimental_inline}}</dt>
<dd>{{WebExtAPIRef("tabs.hide()", "hidden")}}で隠されたタブを表示する。</dd>
<dt>{{WebExtAPIRef("tabs.toggleReaderMode()")}}</dt>
<dd>あるタブについてのリーダーモードへのトグル。</dd>
<dt>{{WebExtAPIRef("tabs.update()")}}</dt>
<dd>新しい URL に案内、もしくはタブの他のプロパティを修正する。</dd>
</dl>
<h2 id="Events" name="Events">イベント</h2>
<dl>
<dt>{{WebExtAPIRef("tabs.onActivated")}}</dt>
<dd>ウィンドウ内でアクティブなタブが変わったときに発火。このイベントが発火した段階ではまだタブの URL はセットされているとは限らない。</dd>
<dt>{{WebExtAPIRef("tabs.onActiveChanged")}} {{deprecated_inline}}</dt>
<dd>ウィンドウの中の選択されたタブが変更されたときに発火。<strong>非推奨:</strong> 代わりに{{WebExtAPIRef("tabs.onActivated")}}を利用してください。</dd>
<dt>{{WebExtAPIRef("tabs.onAttached")}}</dt>
<dd>タブがウィンドウに引っ付けられたとき、例えばウィンドウ間で移動されたときに発火。</dd>
<dt>{{WebExtAPIRef("tabs.onCreated")}}</dt>
<dd>タブが作られたときに発火。このイベントが発火した段階ではまだタブの URL はセットされているとは限らない。</dd>
<dt>{{WebExtAPIRef("tabs.onDetached")}}</dt>
<dd>タブがウィンドウから切り離されたときに発火。例えば、ウィンドウのない場所へタブを移動させたときなど。</dd>
<dt>{{WebExtAPIRef("tabs.onHighlightChanged")}} {{deprecated_inline}}</dt>
<dd>ウィンドウ内でハイライトまたは選択されたタブが変更したときに発火。<strong>非推奨:</strong> 代わりに{{WebExtAPIRef("tabs.onHighlighted")}}を使用してください。</dd>
<dt>{{WebExtAPIRef("tabs.onHighlighted")}}</dt>
<dd>ウィンドウ内でハイライトまたは選択されたタブが変更したときに発火。</dd>
<dt>{{WebExtAPIRef("tabs.onMoved")}}</dt>
<dd>ウィンドウ内にタブが移動したときに発火する。</dd>
<dt>{{WebExtAPIRef("tabs.onRemoved")}}</dt>
<dd>タブが閉じられたときに発火する。</dd>
<dt>{{WebExtAPIRef("tabs.onReplaced")}}</dt>
<dd>プリレンダリングによってタブが他のタブに置き換えられたときに発火。</dd>
<dt>{{WebExtAPIRef("tabs.onSelectionChanged")}} {{deprecated_inline}}</dt>
<dd>ウィンドウ内で選択されているタブが変わったときに発火。<strong>非推奨:</strong> 代わりに{{WebExtAPIRef("tabs.onActivated")}}を使用してください。</dd>
<dt>{{WebExtAPIRef("tabs.onUpdated")}}</dt>
<dd>タブが更新されたときに発火する。</dd>
<dt>{{WebExtAPIRef("tabs.onZoomChange")}}</dt>
<dd>タブがズームされたときに発火する。</dd>
</dl>
<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザー実装状況</h2>
<p>{{Compat("webextensions.api.tabs")}}</p>
<p>{{WebExtExamples("h2")}}</p>
<div class="note"><strong>Acknowledgements</strong>
<p>This API is based on Chromium's <a href="https://developer.chrome.com/extensions/tabs"><code>chrome.tabs</code></a> API. This documentation is derived from <a href="https://chromium.googlesource.com/chromium/src/+/master/chrome/common/extensions/api/tabs.json"><code>tabs.json</code></a> in the Chromium code.</p>
<p>Microsoft Edge compatibility data is supplied by Microsoft Corporation and is included here under the Creative Commons Attribution 3.0 United States License.</p>
</div>
<div class="hidden">
<pre class="notranslate">// Copyright 2015 The Chromium Authors. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
// * Neither the name of Google Inc. nor the names of its
// contributors may be used to endorse or promote products derived from
// this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</pre>
</div>
|