Beschrijving
Met de omnibox API kunt u een trefwoord registreren in de adresbalk van Google Chrome, ook wel de omnibox genoemd.
Wanneer de gebruiker het trefwoord van uw extensie invoert, begint de gebruiker uitsluitend met uw extensie te interacteren. Elke toetsaanslag wordt naar uw extensie verzonden en u kunt suggesties doen als reactie.
De suggesties kunnen op verschillende manieren rijkelijk worden opgemaakt. Wanneer de gebruiker een suggestie accepteert, krijgt uw extensie een melding en kan deze actie ondernemen.
Manifest
U moet een veld "omnibox.keyword"
in het manifest opnemen om de omnibox-API te gebruiken. U moet ook een pictogram van 16 bij 16 pixels opgeven, dat in de adresbalk wordt weergegeven wanneer gebruikers wordt gevraagd de trefwoordmodus te openen.
Bijvoorbeeld:
{
"name": "Aaron's omnibox extension",
"version": "1.0",
"omnibox": { "keyword" : "aaron" },
"icons": {
"16": "16-full-color.png"
},
"background": {
"persistent": false,
"scripts": ["background.js"]
}
}
Voorbeelden
Om deze API uit te proberen, installeert u het omnibox API-voorbeeld uit de chrome-extension-samples repository.
Typen
DefaultSuggestResult
Een suggestieresultaat.
Eigenschappen
- beschrijving
snaar
De tekst die wordt weergegeven in de URL-dropdown. Kan XML-stijlopmaak bevatten voor styling. De ondersteunde tags zijn 'url' (voor een letterlijke URL), 'match' (voor het markeren van tekst die overeenkomt met de zoekopdracht van de gebruiker) en 'dim' (voor dim-hulptekst). De stijlen kunnen worden genest, bijvoorbeeld 'dimmed match'.
DescriptionStyleType
Het stijltype.
Enum
"url" "overeenkomst" "duister"
OnInputEnteredDisposition
De vensterindeling voor de omnibox-query. Dit is de aanbevolen context voor het weergeven van resultaten. Als de omnibox-opdracht bijvoorbeeld naar een bepaalde URL moet navigeren, betekent de indeling 'newForegroundTab' dat de navigatie in een nieuw geselecteerd tabblad moet plaatsvinden.
Enum
"huidigeTab" "nieuweVoorgrondTab" "nieuweAchtergrondTab"
SuggestResult
Een suggestieresultaat.
Eigenschappen
- inhoud
snaar
De tekst die in de URL-balk wordt geplaatst en naar de extensie wordt verzonden wanneer de gebruiker deze invoer kiest.
- verwijderbaar
boolean optioneel
Chroom 63+Of het voorgestelde resultaat door de gebruiker kan worden verwijderd.
- beschrijving
snaar
De tekst die wordt weergegeven in de URL-dropdown. Kan XML-stijlopmaak bevatten voor styling. De ondersteunde tags zijn 'url' (voor een letterlijke URL), 'match' (voor het markeren van tekst die overeenkomt met de zoekopdracht van de gebruiker) en 'dim' (voor dim-hulptekst). De stijlen kunnen genest zijn, bijvoorbeeld 'dimmed match'. U moet de vijf vooraf gedefinieerde entiteiten escapen om ze als tekst weer te geven: stackoverflow.com/a/1091953/89484
Methoden
setDefaultSuggestion()
chrome.omnibox.setDefaultSuggestion(
suggestion: DefaultSuggestResult,
): Promise<void>
Stelt de beschrijving en stijl in voor de standaardsuggestie. De standaardsuggestie is de tekst die wordt weergegeven in de eerste suggestierij onder de URL-balk.
Parameters
- suggestie
Een gedeeltelijk SuggestResult-object, zonder de parameter 'content'.
Retourneren
Belofte<leegte>
Chroom 100+
Evenementen
onDeleteSuggestion
chrome.omnibox.onDeleteSuggestion.addListener(
callback: function,
)
De gebruiker heeft een voorgesteld resultaat verwijderd.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:(text: string) => void
- tekst
snaar
onInputCancelled
chrome.omnibox.onInputCancelled.addListener(
callback: function,
)
De gebruiker heeft de invoer van het trefwoord beëindigd zonder de invoer te accepteren.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:() => void
onInputChanged
chrome.omnibox.onInputChanged.addListener(
callback: function,
)
De gebruiker heeft gewijzigd wat er in de omnibox is getypt.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:(text: string, suggest: function) => void
- tekst
snaar
- voorstellen
functie
De
suggest
ziet er als volgt uit:(suggestResults: SuggestResult[]) => void
- Suggestieresultaten
Array van voorgestelde resultaten
onInputEntered
chrome.omnibox.onInputEntered.addListener(
callback: function,
)
De gebruiker heeft geaccepteerd wat er in de omnibox is getypt.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:(text: string, disposition: OnInputEnteredDisposition) => void
- tekst
snaar
- dispositie
onInputStarted
chrome.omnibox.onInputStarted.addListener(
callback: function,
)
De gebruiker is een trefwoordinvoersessie gestart door het trefwoord van de extensie in te typen. Dit wordt gegarandeerd precies één keer per invoersessie verzonden, en vóór onInputChanged-gebeurtenissen.
Parameters
- terugbellen
functie
De
callback
ziet er als volgt uit:() => void