新しいタブを作ります。
これはPromise
を返す非同期関数です.
構文
var creating = browser.tabs.create(
createProperties // object
)
パラメータ
createProperties
- 新しいタブについてのプロパティを与える
オブジェクト
。これらのプロパティについて詳しくはtabs.Tab
を参照してください。 -
active
Optional- タブをアクティブにするかどうかを
真理値
で指定します。ウィンドウがフォーカスされているかには影響されません(windows.update
も参照)。デフォルト値はtrue
. cookieStoreId
Optional文字列
。タブのcookie store IDがcookieStoreId
のタブを作るときに使用します。このオプションは拡張機能が"cookies"
permissionを持つときのみ使用できます。index
Optional整数値
。ウィンドウ中のタブの位置を指定します。数値はゼロからウィンドウ内のタブの数までです。openerTabId
Optional整数値
。開くタブのIDを指定します。指定した場合、開く側のタブは新しいタブと同じウィンドウにある必要があります。openInReaderMode
Optional真理値
。もしtrue
であればリーダーモードで開かれます。 デフォルトはfalse
。pinned
Optional真理値
。タブをピン留めするかを指定します。デフォルトはfalse
。selected
Optional真理値
。ウィンドウ内で選択されるかどうかを指定します。デフォルトはtrue
。このプロパティは非推奨です。Firefoxではサポートされません。代わりにactive
を使用してください。url
Optional文字列
。はじめに開くURLを指定します。デフォルトは新しいタブ。- スキームを含む完全なURLを指定します。(例えば 'www.google.com' → 'http://www.google.com').
- セキュリティの観点からFirefoxでは特権URLは使用できません。
-
- chrome: URL
- javascript: URL
- data: URL
- file: URL(ファイルシステム上のファイルなど。拡張機能内にパッケージ化されたファイルは指定できます。下部を参照してください)
- 特権 about: URL (例、
about:config
,about:addons
,about:debugging
) 。ただし非特権 URL (about:blank
) は使用できます。 - 新しいタブ (
about:newtab
) はURLを指定しなければ開かれます。
拡張機能内のファイルをロードするためにはmanifest.jsonファイルからの絶対パスで指定します。(例: '/path/to/my-page.html')。もし'/'を省略すると相対パスとして解釈されます。またブラウザによっては、また異なった絶対パスとして解釈されます。
windowId
Optional整数値
。新しくタブを作るウィンドウを指定します。デフォルトは現在開いているウィンドウ。
返り値
新しく作ったタブに関するtabs.Tab
オブジェクトを引数に持つPromise
が返されます。URLが特権URLであるなどして、タブが作られなかった場合はpromiseはエラーメッセージとともにrejectされます。
ブラウザー互換状況
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
例
"https://example.org" を新しいタブで開きます
function onCreated(tab) {
console.log(`Created new tab: ${tab.id}`)
}
function onError(error) {
console.log(`Error: ${error}`);
}
browser.browserAction.onClicked.addListener(function() {
var creating = browser.tabs.create({
url:"https://example.org"
});
creating.then(onCreated, onError);
});
Example extensions
- commands
- contextual-identities
- find-across-tabs
- firefox-code-search
- open-my-page-button
- permissions
- store-collected-images
- tabs-tabs-tabs
このAPIはChromiumのchrome.tabs
APIに基づいています。 このドキュメントは tabs.json
における Chromium のコードに基づいています。
Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。
// 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.