tabs.create()
Erstellt einen neuen Tab.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
Syntax
let creating = browser.tabs.create(
createProperties // object
)
Parameter
createProperties
-
object
. Eigenschaften, die dem neuen Tab zugewiesen werden. Um mehr über diese Eigenschaften zu erfahren, sehen Sie sich dietabs.Tab
Dokumentation an.active
Optional-
boolean
. Ob der Tab der aktive Tab im Fenster werden soll. Wennfalse
, hat dies keine Auswirkung. Beeinflusst nicht, ob das Fenster fokussiert ist (siehewindows.update
). Standardwert isttrue
. -
string
. Verwenden Sie dies, um einen Tab zu erstellen, dessen Cookie-Store-IDcookieStoreId
ist. Diese Option ist nur verfügbar, wenn die Erweiterung die"cookies"
Berechtigung hat. Weitere Informationen finden Sie unter Arbeiten mit kontextuellen Identitäten. discarded
Optional-
boolean
. Ob der Tab erstellt und in der Tableiste sichtbar gemacht wird, ohne dass Inhalte in den Speicher geladen werden, ein Zustand, der als verworfen bekannt ist. Der Inhalt des Tabs wird geladen, wenn der Tab aktiviert wird. index
Optional-
integer
. Die Position, die der Tab im Fenster einnehmen soll. Der angegebene Wert wird zwischen null und der Anzahl der Tabs im Fenster begrenzt. muted
Optional-
boolean
. Ob der Tab stummgeschaltet werden soll. Standardwert istfalse
. openerTabId
Optional-
integer
. Die ID des Tabs, der diesen Tab geöffnet hat. Wenn angegeben, muss der öffnende Tab im selben Fenster wie der neu erstellte Tab sein. openInReaderMode
Optional-
boolean
. Wenntrue
, öffnen Sie diesen Tab im Lesemodus. Standardwert istfalse
. pinned
Optional-
boolean
. Ob der Tab angeheftet werden soll. Standardwert istfalse
. selected
Optional-
boolean
. Ob der Tab der ausgewählte Tab im Fenster werden soll. Standardwert isttrue
.Warnung: Diese Eigenschaft ist veraltet und wird in Firefox nicht unterstützt. Verwenden Sie stattdessen
active
. title
Optional-
string
. Der Titel des Tabs. Nur erlaubt, wenn der Tab mitdiscarded
auftrue
erstellt wird. url
Optional-
string
. Die URL, zu der der Tab anfangs navigieren soll. Standardwert ist die Neue-Tab-Seite.Vollständig qualifizierte URLs müssen ein Schema enthalten (beispielsweise 'http://www.google.com' statt 'www.google.com').
Aus Sicherheitsgründen darf dies in Firefox keine privilegierte URL sein. Daher schlägt die Übergabe einer der folgenden URLs fehl:
- chrome: URLs
- javascript: URLs
- data: URLs
- file: URLs (d.h. Dateien auf dem Dateisystem. Um jedoch eine Datei zu verwenden, die in die Erweiterung eingebunden ist, siehe unten)
- privilegierte about: URLs (z. B.
about:config
,about:addons
,about:debugging
). Nicht privilegierte URLs (z. B.about:blank
) sind erlaubt. - Die Neue-Tab-Seite (
about:newtab
) kann geöffnet werden, wenn kein Wert für URL angegeben ist.
Um eine Seite zu laden, die in Ihre Erweiterung eingebunden ist, geben Sie eine absolute URL an, die bei der manifest.json-Datei der Erweiterung beginnt. Beispielsweise: '/path/to/my-page.html'. Wenn Sie das führende '/' weglassen, wird die URL als relative URL behandelt, und verschiedene Browser können unterschiedliche absolute URLs konstruieren.
windowId
Optional-
integer
. Das Fenster, in dem der neue Tab erstellt werden soll. Standardwert ist das aktuelle Fenster.
Rückgabewert
Ein Promise
, das mit einem tabs.Tab
Objekt erfüllt wird, das Details über den erstellten Tab enthält. Wenn der Tab nicht erstellt werden konnte (zum Beispiel, weil url
ein privilegiertes Schema verwendet), wird das Promise mit einer Fehlermeldung abgelehnt.
Das von browser.tabs.create()
zurückgegebene Promise wird aufgelöst, sobald der Tab erstellt wurde. Der Tab kann noch geladen werden. Um zu erkennen, wann der Tab das Laden abgeschlossen hat, hören Sie auf das tabs.onUpdated
oder das webNavigation.onCompleted
Ereignis, bevor Sie tabs.create
aufrufen.
Beispiele
Öffnen Sie "https://example.org" in einem neuen Tab:
function onCreated(tab) {
console.log(`Created new tab: ${tab.id}`);
}
function onError(error) {
console.log(`Error: ${error}`);
}
browser.browserAction.onClicked.addListener(() => {
let creating = browser.tabs.create({
url: "https://example.org",
});
creating.then(onCreated, onError);
});
Beispiel-Erweiterungen
Browser-Kompatibilität
BCD tables only load in the browser
Hinweis: Diese API basiert auf der chrome.tabs
API von Chromium. Diese Dokumentation ist abgeleitet aus tabs.json
im Chromium-Code.