tabs.query()
指定されたプロパティを持つ全てのタブを取得します。何も指定しない場合、全てのタブを取得します。
この関数は Promise
を返す非同期関数です。
構文
var querying = browser.tabs.query(
queryInfo, // object
);
パラメーター
queryInfo
-
object
.query()
関数はここで指定されたプロパティにマッチするタブだけを取得します。 このプロパティについての詳細はtabs.Tab
を参照してください。active
省略可-
boolean
. 各ウインドウの中でアクティブかどうか。 audible
省略可-
boolean
. 音が鳴っているか。 autoDiscardable
省略可-
boolean
. リソースが少なくなったときにブラウザーによって自動的に discard できるか。 -
string
. Cookie ストアの ID がcookieStoreId
なタブのみを返すために使います。このオプションは"cookies"
permissionを持つ拡張でのみ使用できます。 currentWindow
省略可-
boolean
. カレントウインドウの中のタブか。 discarded
省略可-
boolean
. タブが discard されているか。 discard されたタブはコンテンツがメモリーからアンロードされているが、タブの一覧には表示されたままになります。コンテンツはタブが次にアクティブになったときにリロードされます。 highlighted
省略可-
boolean
. ハイライトされているか。 index
省略可-
integer
. ウィンドウの中での位置。 muted
省略可-
boolean
. ミュートされているか。 lastFocusedWindow
省略可-
boolean
. 最後にフォーカスされたウインドウのタブか。 openerTabId
省略可-
integer
. そのタブを開いたタブの ID。 pinned
省略可-
boolean
. ピン留めされているか。 status
省略可-
tabs.TabStatus
. ロードが完了しているか。 title
省略可-
string
. ページのタイトル。 url
省略可-
string
もしくはarray of string
. 1 つ以上のマッチパターンにマッチするタブか。フラグメント識別子にはマッチしません。 windowId
省略可-
integer
. そのウインドウの ID。カレントウインドウの場合は、windows.WINDOW_ID_CURRENT
。 windowType
省略可-
tabs.WindowType
. そのタブの属するウインドウの種類。
戻り値
ブラウザーの互換性
BCD tables only load in the browser
例
全てのタブを取得する例:
function logTabs(tabs) {
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({});
querying.then(logTabs, onError);
カレントウインドウの全てのタブを取得する例:
function logTabs(tabs) {
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({ currentWindow: true });
querying.then(logTabs, onError);
カレントウインドウのアクティブなタブを取得する例:
function logTabs(tabs) {
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({ currentWindow: true, active: true });
querying.then(logTabs, onError);
"mozilla.org" またはそのサブドメイン下の HTTP/HTTPS URL を開いている全てのタブを取得する例:
function logTabs(tabs) {
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({ url: "*://*.mozilla.org/*" });
querying.then(logTabs, onError);
moz-extension:// URL を開いている全てのタブを取得する例:
function logTabs(tabs) {
console.log(tabs);
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({ url: "moz-extension://*/*" });
querying.then(logTabs, onError);
この拡張機能の URL を開いている全てのタブを取得する例:
function logTabs(tabs) {
console.log(tabs);
for (let tab of tabs) {
// tab.url requires the `tabs` permission
console.log(tab.url);
}
}
function onError(error) {
console.log(`Error: ${error}`);
}
var querying = browser.tabs.query({ url: browser.extension.getURL("*") });
querying.then(logTabs, onError);
Example extensions
- annotate-page
- apply-css
- beastify
- bookmark-it
- chill-out
- contextual-identities
- cookie-bg-picker
- find-across-tabs
- history-deleter
- imagify
- list-cookies
- session-state
- tabs-tabs-tabs
メモ:
この API は Chromium の chrome.tabs
API に基づいています。 This documentation is derived from tabs.json
in the Chromium code.Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。