chrome.omnibox

Beschrijving

Met de omnibox API kunt u een trefwoord registreren in de adresbalk van Google Chrome, ook wel de omnibox genoemd.

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

Wanneer de gebruiker het zoekwoord van uw extensie invoert, begint de gebruiker uitsluitend met uw extensie te communiceren. Elke toetsaanslag wordt naar uw toestel verzonden en u kunt als antwoord suggesties geven.

De suggesties kunnen op verschillende manieren rijkelijk worden opgemaakt. Wanneer de gebruiker een suggestie accepteert, ontvangt uw toestel een melding en kan actie ondernemen.

Manifest

De volgende sleutels moeten in het manifest worden gedeclareerd om deze API te kunnen gebruiken.

"omnibox"

U moet een veld "omnibox.keyword" in het manifest opnemen om de omnibox API te kunnen gebruiken. U moet ook een pictogram van 16 bij 16 pixels opgeven, dat in de adresbalk wordt weergegeven wanneer wordt voorgesteld dat gebruikers naar de trefwoordmodus gaan.

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 te proberen, installeert u het omnibox API-voorbeeld uit de chrome-extension-samples- repository.

Soorten

DefaultSuggestResult

Een suggestief resultaat.

Eigenschappen

  • beschrijving

    snaar

    De tekst die wordt weergegeven in de vervolgkeuzelijst URL. Kan opmaak in XML-stijl 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 dimbare helptekst). De stijlen kunnen worden genest, bijv. gedimde wedstrijd.

DescriptionStyleType

Chroom 44+

Het stijltype.

Enum

"url"

"overeenkomst"

"dim"

OnInputEnteredDisposition

Chroom 44+

De vensterdispositie voor de omnibox-query. Dit is de aanbevolen context om resultaten weer te geven. Als het omnibox-commando bijvoorbeeld is om naar een bepaalde URL te navigeren, betekent de instelling 'newForegroundTab' dat de navigatie moet plaatsvinden op een nieuw geselecteerd tabblad.

Enum

"huidig ​​tabblad"

"nieuwVoorgrondTabblad"

"nieuwAchtergrondtabblad"

SuggestResult

Een suggestief resultaat.

Eigenschappen

  • inhoud

    snaar

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

  • verwijderbaar

    Booleaans optioneel

    Chroom 63+

    Of het voorgestelde resultaat door de gebruiker kan worden verwijderd.

  • beschrijving

    snaar

    De tekst die wordt weergegeven in de vervolgkeuzelijst URL. Kan opmaak in XML-stijl 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 dimbare helptekst). De stijlen kunnen worden genest, bijv. gedimde wedstrijd. U moet aan de vijf vooraf gedefinieerde entiteiten ontsnappen om ze als tekst weer te geven: stackoverflow.com/a/1091953/89484

Methoden

setDefaultSuggestion()

Belofte
chrome.omnibox.setDefaultSuggestion(
  suggestion: DefaultSuggestResult,
  callback?: function,
)

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

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

  • terugbellen

    functie optioneel

    Chroom 100+

    De callback parameter ziet er als volgt uit:

    () => void

Retouren

  • Beloof <nietig>

    Chroom 100+

    Beloften worden ondersteund in Manifest V3 en hoger, maar er zijn callbacks beschikbaar voor achterwaartse compatibiliteit. U kunt niet beide gebruiken bij dezelfde functieaanroep. De belofte wordt opgelost met hetzelfde type dat wordt doorgegeven aan de callback.

Evenementen

onDeleteSuggestion

Chroom 63+
chrome.omnibox.onDeleteSuggestion.addListener(
  callback: function,
)

Gebruiker heeft een voorgesteld resultaat verwijderd.

Parameters

  • terugbellen

    functie

    De callback parameter ziet er als volgt uit:

    (text: string) => void

    • tekst

      snaar

onInputCancelled

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

De gebruiker heeft de trefwoordinvoersessie beëindigd zonder de invoer te accepteren.

Parameters

  • terugbellen

    functie

    De callback parameter 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 parameter ziet er als volgt uit:

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

    • tekst

      snaar

    • voorstellen

      functie

      De suggest ziet er als volgt 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 heeft een trefwoordinvoersessie gestart door het trefwoord van de extensie te typen. Dit wordt gegarandeerd precies één keer per invoersessie verzonden, en vóór eventuele onInputChanged-gebeurtenissen.

Parameters

  • terugbellen

    functie

    De callback parameter ziet er als volgt uit:

    () => void