chrome.types

refresh date: 2026-09-25 robots: noindex

Beschrijving

De chrome.types API bevat typedeclaraties voor Chrome.

Chrome-instellingen

Het prototype ChromeSetting biedt een algemene set functies (get(), set() en clear()) en een gebeurtenisuitgever (onChange) voor instellingen van de Chrome-browser. De voorbeelden van proxyinstellingen laten zien hoe deze functies moeten worden gebruikt.

Bereik en levenscyclus

Chrome maakt onderscheid tussen 3 verschillende bereiken van browserinstellingen:

regular
Instellingen die zijn ingesteld in het bereik regular, zijn van toepassing op normale browservensters en worden overgenomen door incognitovensters als ze niet worden overschreven. Deze instellingen worden opgeslagen op de schijf en blijven daar staan totdat ze worden gewist door de beherende extensie of totdat de beherende extensie wordt uitgezet of verwijderd.
incognito_persistent
Instellingen die zijn ingesteld in het bereik incognito_persistent zijn alleen van toepassing op incognitovensters. Voor deze overschrijven ze de instellingen van regular. Deze instellingen worden opgeslagen op de schijf en blijven van kracht totdat ze worden gewist door de beherende extensie of totdat de beherende extensie wordt uitgezet of verwijderd.
incognito_session_only
Instellingen die zijn ingesteld in het bereik incognito_session_only zijn alleen van toepassing op incognitovensters. Voor deze instellingen overschrijven ze de instellingen van regular en incognito_persistent. Deze instellingen worden niet opgeslagen op de schijf en worden gewist als het laatste incognitovenster wordt gesloten. Je kunt deze alleen instellen als er minstens één incognitovenster is geopend.

Prioriteit

Chrome beheert instellingen op verschillende lagen. In de volgende lijst staan de lagen die de effectieve instellingen kunnen beïnvloeden, in oplopende volgorde van prioriteit.

  1. Systeeminstellingen die worden geleverd door het besturingssysteem
  2. Parameters voor de opdrachtregel
  3. Instellingen die worden geleverd door extensies
  4. Beleid

Zoals de lijst aangeeft, kunnen beleidsregels wijzigingen overschrijven die je met je extensie opgeeft. Je kunt de functie get() gebruiken om te bepalen of je extensie een instelling kan bieden of dat deze instelling wordt overschreven.

Zoals hierboven besproken, kun je in Chrome verschillende instellingen gebruiken voor normale vensters en incognitovensters. In het volgende voorbeeld wordt dit gedrag geïllustreerd. We gaan ervan uit dat geen enkel beleid de instellingen overschrijft en dat een extensie instellingen kan instellen voor normale vensters (R) en instellingen voor incognitovensters (I).

  • Als alleen (R) is ingesteld, gelden deze instellingen voor zowel normale als incognitovensters.
  • Als alleen (I) is ingesteld, gelden deze instellingen alleen voor incognitovensters. Normale vensters gebruiken de instellingen die worden bepaald door de lagere lagen (opdrachtregelopties en systeeminstellingen).
  • Als zowel (R) als (I) zijn ingesteld, worden de respectieve instellingen gebruikt voor normale en incognitovensters.

Als 2 of meer extensies dezelfde instelling willen instellen op verschillende waarden, krijgt de meest recent geïnstalleerde extensie voorrang op de andere extensies. Als de meest recent geïnstalleerde extensie alleen (I) instelt, kunnen de instellingen van normale vensters worden gedefinieerd door eerder geïnstalleerde extensies.

De effectieve waarde van een instelling is de waarde die het resultaat is van de voorrangsregels. Het wordt gebruikt door Chrome.

Typen

ChromeSetting

Een interface die toegang geeft tot een browserinstelling van Chrome. Bekijk accessibilityFeatures voor een voorbeeld.

Eigenschappen

  • onChange

    Event<functionvoidvoid>

    Wordt geactiveerd nadat de instelling is gewijzigd.

    De functie onChange.addListener ziet er zo uit:

    (callback: function) => {...}

    • callback

      functie

      De parameter callback ziet er zo uit:

      (details: object) => void

      • details

        object

        • incognitoSpecific

          booleaans optioneel

          Of de gewijzigde waarde specifiek is voor de incognitosessie. Deze property is alleen aanwezig als de gebruiker de extensie heeft aangezet in de incognitomodus.

        • levelOfControl

          Het controleniveau van de instelling.

        • waarde

          D

          De waarde van de instelling na de wijziging.

  • wissen

    ongeldig

    Promise

    Hiermee wordt de instelling gewist en wordt de standaardwaarde hersteld.

    De functie clear ziet er zo uit:

    (details: object, callback?: function) => {...}

    • details

      object

      Welke instelling je wilt wissen.

      • bereik

        Waar de instelling moet worden gewist (standaard: normaal).

    • callback

      functie optioneel

      De parameter callback ziet er zo uit:

      () => void

    • returns

      Promise<void>

      Chrome 96+

      Wordt aangeroepen als de bewerking voor wissen is afgerond.

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

  • get

    ongeldig

    Promise

    Haalt de waarde van een instelling op.

    De functie get ziet er zo uit:

    (details: object, callback?: function) => {...}

    • details

      object

      Welke instelling je kunt overwegen.

      • incognito

        booleaans optioneel

        Of de waarde die van toepassing is op de incognitosessie moet worden geretourneerd (standaard onwaar).

    • callback

      functie optioneel

      De parameter callback ziet er zo uit:

      (details: object) => void

      • details

        object

        Details van de huidige effectieve waarde.

        • incognitoSpecific

          booleaans optioneel

          Of de effectieve waarde specifiek is voor de incognitosessie. Deze property is alleen aanwezig als de property incognito in de parameter details van get() waar was.

        • levelOfControl

          Het controleniveau van de instelling.

        • waarde

          D

          De waarde van de instelling.

    • returns

      Promise<object>

      Chrome 96+

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

  • set

    ongeldig

    Promise

    Stelt de waarde van een instelling in.

    De functie set ziet er zo uit:

    (details: object, callback?: function) => {...}

    • details

      object

      Welke instelling je wilt wijzigen.

      • bereik

        Waar je de instelling instelt (standaard: normaal).

      • waarde

        D

        De waarde van de instelling. Elke instelling heeft een specifiek waardetype, dat samen met de instelling wordt beschreven. Een extensie mag geen waarde van een ander type instellen.

    • callback

      functie optioneel

      De parameter callback ziet er zo uit:

      () => void

    • returns

      Promise<void>

      Chrome 96+

      Wordt aangeroepen als de instelbewerking is afgerond.

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

ChromeSettingScope

Chrome 44+

Het bereik van de ChromeSetting. Een van

  • regular: instelling voor het normale profiel (die wordt overgenomen door het incognitoprofiel als deze niet ergens anders wordt overschreven),
  • regular\_only: instelling alleen voor het normale profiel (niet overgenomen door het incognitoprofiel),
  • incognito\_persistent: instelling voor het incognitoprofiel die blijft bestaan nadat de browser opnieuw is opgestart (overschrijft normale voorkeuren),
  • incognito\_session\_only: instelling voor het incognitoprofiel die alleen kan worden ingesteld tijdens een incognitosessie en wordt verwijderd als de incognitosessie wordt beëindigd (overschrijft de voorkeuren regular en incognito_persistent).

Enum

"regular"

"regular_only"

"incognito_persistent"

"incognito_session_only"

LevelOfControl

Chrome 44+

Een van

  • not\_controllable: kan niet worden beheerd door een extensie
  • controlled\_by\_other\_extensions: beheerd door extensies met een hogere prioriteit
  • controllable\_by\_this\_extension: kan worden beheerd door deze extensie
  • controlled\_by\_this\_extension: beheerd door deze extensie

Enum

"not_controllable"

"controlled_by_other_extensions"

"controllable_by_this_extension"

"controlled_by_this_extension"