Beschreibung
Mit der Omnibox API können Sie ein Suchwort in der Adressleiste von Google Chrome registrieren, die auch als Omnibox bezeichnet wird.

Wenn der Nutzer das Keyword Ihrer Erweiterung eingibt, interagiert er nur noch mit Ihrer Erweiterung. Jeder Tastendruck wird an Ihre Erweiterung gesendet und Sie können als Antwort Vorschläge machen.
Die Vorschläge können auf verschiedene Weise formatiert werden. Wenn der Nutzer einen Vorschlag annimmt, wird Ihre Erweiterung benachrichtigt und kann entsprechende Maßnahmen ergreifen.
Manifest
Wenn Sie die Omnibox API verwenden möchten, müssen Sie im Manifest das Feld "omnibox.keyword" angeben. Außerdem solltest du ein Symbol mit 16 × 16 Pixeln angeben, das in der Adressleiste angezeigt wird, wenn Nutzern vorgeschlagen wird, den Keyword-Modus zu aktivieren.
Beispiel:
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
Beispiele
Wenn Sie diese API ausprobieren möchten, installieren Sie das Omnibox API-Beispiel aus dem Repository chrome-extension-samples.
Typen
DefaultSuggestResult
Ein Vorschlagsergebnis.
Attribute
-
Beschreibung
String
Der Text, der im URL-Drop-down-Menü angezeigt wird. Kann XML-Stil-Markup für die Formatierung enthalten. Die unterstützten Tags sind „url“ (für eine literale URL), „match“ (zum Hervorheben von Text, der mit der Suchanfrage des Nutzers übereinstimmt) und „dim“ (für abgeblendeten Hilfetext). Die Stile können verschachtelt werden, z. B. gedimmte Übereinstimmung.
DescriptionStyleType
Der Stiltyp.
Enum
"url"
"match"
"dim"
OnInputEnteredDisposition
Die Fensteranordnung für die Omnibox-Abfrage. Dies ist der empfohlene Kontext für die Anzeige von Ergebnissen. Wenn der Omnibox-Befehl beispielsweise darin besteht, eine bestimmte URL aufzurufen, bedeutet die Disposition „newForegroundTab“, dass die Navigation in einem neuen ausgewählten Tab erfolgen soll.
Enum
"currentTab"
"newForegroundTab"
"newBackgroundTab"
SuggestResult
Ein Vorschlagsergebnis.
Attribute
-
Inhalt
String
Der Text, der in die URL-Leiste eingefügt und an die Erweiterung gesendet wird, wenn der Nutzer diesen Eintrag auswählt.
-
deletable
Boolesch optional
Chrome 63 und höher browser.* seit Chrome 148Gibt an, ob das vorgeschlagene Ergebnis vom Nutzer gelöscht werden kann.
-
Beschreibung
String
Der Text, der im URL-Drop-down-Menü angezeigt wird. Kann XML-Stil-Markup für die Formatierung enthalten. Die unterstützten Tags sind „url“ (für eine literale URL), „match“ (zum Hervorheben von Text, der mit der Suchanfrage des Nutzers übereinstimmt) und „dim“ (für abgeblendeten Hilfetext). Die Stile können verschachtelt werden, z. B. gedimmte Übereinstimmung. Sie müssen die fünf vordefinierten Entitäten mit Escape-Zeichen versehen, damit sie als Text angezeigt werden: stackoverflow.com/a/1091953/89484
Methoden
setDefaultSuggestion()
browser.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
): Promise<void>
Legt die Beschreibung und den Stil für den Standardvorschlag fest. Der Standardvorschlag ist der Text, der in der ersten Vorschlagszeile unter der URL-Leiste angezeigt wird.
Parameter
-
Vorschlag
Ein partielles SuggestResult-Objekt ohne den Parameter „content“.
Ausgabe
-
Promise<void>
Chrome 100+ browser.* seit Chrome 148
Ereignisse
onDeleteSuggestion
browser.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
Der Nutzer hat ein vorgeschlagenes Ergebnis gelöscht.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(text: string) => void
-
Text
String
-
onInputCancelled
browser.omnibox.onInputCancelled.addListener(
callback: function,
)
Der Nutzer hat die Keyword-Eingabesitzung beendet, ohne die Eingabe zu akzeptieren.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:() => void
onInputChanged
browser.omnibox.onInputChanged.addListener(
callback: function,
)
Der Nutzer hat die Eingabe in der Omnibox geändert.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(text: string, suggest: function) => void
-
Text
String
-
suggest
Funktion
Der Parameter
suggestsieht so aus:(suggestResults: SuggestResult[]) => void
-
suggestResults
Array mit Vorschlagsergebnissen
-
-
onInputEntered
browser.omnibox.onInputEntered.addListener(
callback: function,
)
Der Nutzer hat die Eingabe in der Omnibox akzeptiert.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(text: string, disposition: OnInputEnteredDisposition) => void
-
Text
String
-
disposition
-
onInputStarted
browser.omnibox.onInputStarted.addListener(
callback: function,
)
Der Nutzer hat eine Keyword-Eingabesitzung gestartet, indem er das Keyword der Erweiterung eingegeben hat. Dieses Ereignis wird garantiert genau einmal pro Eingabesitzung und vor allen „onInputChanged“-Ereignissen gesendet.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:() => void