chrome.omnibox

refresh date: 2026-09-25 robots: noindex

Beschrijving

Met de omnibox-API kun je een zoekwoord registreren in de adresbalk van Google Chrome, ook wel de omnibox genoemd.

Een screenshot met suggesties die gerelateerd zijn aan het zoekwoord 'Chromium Search'

Als de gebruiker het zoekwoord van je extensie invoert, heeft de gebruiker alleen interactie met je extensie. Elke toetsaanslag wordt naar je extensie gestuurd en je kunt suggesties geven als reactie.

De suggesties kunnen op verschillende manieren worden opgemaakt. Als de gebruiker een suggestie accepteert, krijgt je extensie een melding en kan deze actie ondernemen.

Manifest

Je moet een omnibox-veld keyword opnemen in het manifest om de omnibox-API te gebruiken. Je moet ook een icoon van 16 x 16 pixels opgeven. Dit wordt getoond in de adresbalk als je gebruikers voorstelt de zoekwoordmodus te openen.

Voorbeeld:

{
  "name": "Aaron's omnibox extension",
  "version": "1.0",
  "omnibox": { "keyword" : "aaron" },
  "icons": {
    "16": "16-full-color.png"
  },
  "background": {
    "persistent": false,
    "scripts": ["background.js"]
  }
}

Voorbeelden

Als je deze API wilt proberen, installeer je het voorbeeld van de omnibox API uit de repository chrome-extension-samples.

Typen

DefaultSuggestResult

Een voorgesteld resultaat.

Eigenschappen

  • beschrijving

    tekenreeks

    De tekst die wordt getoond in het dropdownmenu URL. Kan opmaak in XML-stijl bevatten voor de stijl. 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 gedimde hulptekst). De stijlen kunnen worden genest, bijvoorbeeld een gedimde overeenkomst.

DescriptionStyleType

Chrome 44+

Het stijltype.

Enum

"url"

"match"

"dim"

OnInputEnteredDisposition

Chrome 44+

De vensterindeling voor de omnibox-query. Dit is de aanbevolen context om resultaten te tonen. Als de opdracht in de omnibox bijvoorbeeld is om naar een bepaalde URL te gaan, betekent de indeling 'newForegroundTab' dat de navigatie moet plaatsvinden op een nieuw geselecteerd tabblad.

Enum

"currentTab"

"newForegroundTab"

"newBackgroundTab"

SuggestResult

Een voorgesteld resultaat.

Eigenschappen

  • content

    tekenreeks

    De tekst die in de URL-balk wordt geplaatst en die naar de extensie wordt gestuurd als de gebruiker dit item kiest.

  • verwijderbaar

    booleaans optioneel

    Chrome 63 of hoger

    Of het voorgestelde resultaat kan worden verwijderd door de gebruiker.

  • beschrijving

    tekenreeks

    De tekst die wordt getoond in het dropdownmenu URL. Kan opmaak in XML-stijl bevatten voor de stijl. 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 gedimde hulptekst). De stijlen kunnen worden genest, bijvoorbeeld een gedimde overeenkomst. Je moet de 5 vooraf gedefinieerde entiteiten escapen om ze als tekst weer te geven: stackoverflow.com/a/1091953/89484

Methoden

setDefaultSuggestion()

Promise
chrome.omnibox.setDefaultSuggestion(
  suggestion: DefaultSuggestResult,
  callback?: function,
)
: Promise<void>

Hiermee stel je de beschrijving en stijl in voor de standaardsuggestie. De standaardsuggestie is de tekst die wordt getoond in de eerste suggestierij onder de URL-balk.

Parameters

  • Een gedeeltelijk SuggestResult-object, zonder de parameter 'content'.

  • callback

    functie optioneel

    Chrome 100+

    De parameter callback ziet er zo uit:

    () => void

Retourzendingen

  • Promise<void>

    Chrome 100+

    Promises worden alleen ondersteund voor Manifest V3 en hoger. Andere platforms moeten callbacks gebruiken.

Evenementen

onDeleteSuggestion

Chrome 63 of hoger
chrome.omnibox.onDeleteSuggestion.addListener(
  callback: function,
)

De gebruiker heeft een voorgesteld resultaat verwijderd.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (text: string) => void

    • tekst

      tekenreeks

onInputCancelled

chrome.omnibox.onInputCancelled.addListener(
  callback: function,
)

De gebruiker heeft de sessie voor zoekwoordinvoer beëindigd zonder de invoer te accepteren.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    () => void

onInputChanged

chrome.omnibox.onInputChanged.addListener(
  callback: function,
)

De gebruiker heeft gewijzigd wat er in de omnibox is getypt.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    (text: string, suggest: function) => void

    • tekst

      tekenreeks

    • suggest

      functie

      De parameter suggest ziet er zo uit:

      (suggestResults: SuggestResult[]) => void

onInputEntered

chrome.omnibox.onInputEntered.addListener(
  callback: function,
)

De gebruiker heeft geaccepteerd wat er in de omnibox is getypt.

Parameters

onInputStarted

chrome.omnibox.onInputStarted.addListener(
  callback: function,
)

De gebruiker is een sessie voor zoekwoordinvoer gestart door het zoekwoord van de extensie te typen. Deze wordt gegarandeerd precies één keer per invoersessie gestuurd en vóór onInputChanged-gebeurtenissen.

Parameters

  • callback

    functie

    De parameter callback ziet er zo uit:

    () => void