Opis
Interfejs API omniboksu umożliwia zarejestrowanie słowa kluczowego na pasku adresu Google Chrome, który jest również nazywany omniboksem.

Gdy użytkownik wpisze słowo kluczowe rozszerzenia, zacznie wchodzić w interakcję wyłącznie z rozszerzeniem. Każde naciśnięcie klawisza jest wysyłane do rozszerzenia, które może w odpowiedzi wyświetlać sugestie.
Sugestie mogą być sformatowane na różne sposoby. Gdy użytkownik zaakceptuje sugestię, rozszerzenie otrzyma powiadomienie i będzie mogło podjąć działanie.
Plik manifestu
Aby używać interfejsu Omnibox API, musisz uwzględnić pole "omnibox.keyword" w pliku manifestu. Należy też określić ikonę o wymiarach 16 x 16 pikseli, która będzie wyświetlana na pasku adresu, gdy użytkownikowi zostanie zasugerowane przejście do trybu słów kluczowych.
Na przykład:
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
Przykłady
Aby wypróbować ten interfejs API, zainstaluj przykład interfejsu Omnibox API z repozytorium chrome-extension-samples.
Typy
DefaultSuggestResult
Sugerowany wynik.
Właściwości
-
opis
tekst
Tekst wyświetlany w menu URL. Może zawierać znaczniki w stylu XML do formatowania. Obsługiwane tagi to „url” (dosłowny adres URL), „match” (wyróżnienie tekstu pasującego do zapytania użytkownika) i „dim” (tekst pomocniczy). Style mogą być zagnieżdżone, np. przyciemnione dopasowanie.
DescriptionStyleType
Typ stylu.
Typ wyliczeniowy
"url"
"match"
"dim"
OnInputEnteredDisposition
Dyspozycja okna dla zapytania z omniboksu. Jest to zalecany kontekst wyświetlania wyników. Jeśli na przykład polecenie omniboksa ma prowadzić do określonego adresu URL, dyspozycja „newForegroundTab” oznacza, że nawigacja powinna odbywać się na nowej wybranej karcie.
Typ wyliczeniowy
"currentTab"
"newForegroundTab"
"newBackgroundTab"
SuggestResult
Sugerowany wynik.
Właściwości
-
treść
tekst
Tekst, który jest umieszczany na pasku adresu URL i wysyłany do rozszerzenia, gdy użytkownik wybierze ten wpis.
-
deletable
boolean opcjonalne
Chrome 63 lub nowsza browser.* od Chrome 148Czy użytkownik może usunąć wynik sugestii.
-
opis
tekst
Tekst wyświetlany w menu URL. Może zawierać znaczniki w stylu XML do formatowania. Obsługiwane tagi to „url” (dosłowny adres URL), „match” (wyróżnienie tekstu pasującego do zapytania użytkownika) i „dim” (tekst pomocniczy). Style mogą być zagnieżdżone, np. przyciemnione dopasowanie. Aby wyświetlić 5 wstępnie zdefiniowanych encji jako tekst, musisz użyć znaku zmiany znaczenia: stackoverflow.com/a/1091953/89484
Metody
setDefaultSuggestion()
browser.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
): Promise<void>
Ustawia opis i styl domyślnej sugestii. Domyślna sugestia to tekst wyświetlany w pierwszym wierszu sugestii pod paskiem adresu URL.
Parametry
-
sugestia
Częściowy obiekt SuggestResult bez parametru „content”.
Zwroty
-
thought Promise<void>
Chrome 100 lub nowsza browser.* od Chrome 148
Wydarzenia
onDeleteSuggestion
browser.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
Użytkownik usunął sugerowany wynik.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(text: string) => void
-
tekst
tekst
-
onInputCancelled
browser.omnibox.onInputCancelled.addListener(
callback: function,
)
Użytkownik zakończył sesję wprowadzania słów kluczowych bez zaakceptowania danych wejściowych.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:() => void
onInputChanged
browser.omnibox.onInputChanged.addListener(
callback: function,
)
Użytkownik zmienił tekst wpisany w omniboksie.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(text: string, suggest: function) => void
-
tekst
tekst
-
zasugeruj
funkcja
Parametr
suggestwygląda tak:(suggestResults: SuggestResult[]) => void
-
suggestResults
Tablica wyników sugestii
-
-
onInputEntered
browser.omnibox.onInputEntered.addListener(
callback: function,
)
Użytkownik zaakceptował tekst wpisany w omniboksie.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:(text: string, disposition: OnInputEnteredDisposition) => void
-
tekst
tekst
-
dyspozycja
-
onInputStarted
browser.omnibox.onInputStarted.addListener(
callback: function,
)
Użytkownik rozpoczął sesję wprowadzania słowa kluczowego, wpisując słowo kluczowe rozszerzenia. To zdarzenie jest wysyłane dokładnie raz na sesję wprowadzania danych i przed wszystkimi zdarzeniami onInputChanged.
Parametry
-
callback
funkcja
Parametr
callbackwygląda tak:() => void