chrome.pageAction

Vernieuwingsdatum: 2026-09-25 robots: noindex

Beschrijving

Gebruik de chrome.pageAction API om pictogrammen in de hoofdwerkbalk van Google Chrome te plaatsen, rechts van de adresbalk. Pagina-acties vertegenwoordigen acties die op de huidige pagina kunnen worden uitgevoerd, maar die niet van toepassing zijn op alle pagina's. Pagina-acties worden grijs weergegeven wanneer ze inactief zijn.

Beschikbaarheid

≤ MV2

Enkele voorbeelden:

  • Abonneer u op de RSS-feed van deze pagina.
  • Maak een diavoorstelling van de foto's op deze pagina.

Het RSS-pictogram in de volgende schermafbeelding vertegenwoordigt een pagina-actie waarmee u zich kunt abonneren op de RSS-feed voor de huidige pagina.

Verborgen pagina-acties worden grijs weergegeven. De RSS-feed hieronder is bijvoorbeeld grijs weergegeven, omdat u zich niet kunt abonneren op de feed voor de huidige pagina:

Overweeg om in plaats daarvan een browseractie te gebruiken, zodat gebruikers altijd met uw extensie kunnen communiceren.

Manifest

Registreer je pagina-actie in het extensiemanifest als volgt:

{
  "name": "My extension",
  ...
  "page_action": {
    "default_icon": {                    // optional
      "16": "images/icon16.png",           // optional
      "24": "images/icon24.png",           // optional
      "32": "images/icon32.png"            // optional
    },
    "default_title": "Google Mail",      // optional; shown in tooltip
    "default_popup": "popup.html"        // optional
  },
  ...
}

Omdat apparaten met minder gangbare schaalfactoren zoals 1,5x of 1,2x steeds vaker voorkomen, is het aan te raden om meerdere formaten voor je pictogrammen aan te bieden. Chrome selecteert het formaat dat er het dichtst bij ligt en schaalt het om de ruimte van 16 dips te vullen. Dit zorgt er ook voor dat je geen nieuwe pictogrammen hoeft aan te leveren als de weergavegrootte van het pictogram ooit verandert! Als het verschil in grootte echter te groot is, kan deze schaling ervoor zorgen dat het pictogram details verliest of er wazig uitziet.

De oude syntax voor het registreren van het standaardpictogram wordt nog steeds ondersteund:

{
  "name": "My extension",
  ...
  "page_action": {
    ...
    "default_icon": "images/icon32.png"  // optional
    // equivalent to "default_icon": { "32": "images/icon32.png" }
  },
  ...
}

Onderdelen van de gebruikersinterface

Net als browseracties kunnen pagina-acties een pictogram, een tooltip en een pop-up hebben; badges zijn echter niet toegestaan. Daarnaast kunnen pagina-acties grijs worden weergegeven. Meer informatie over pictogrammen, tooltips en pop-ups vindt u in het artikel over de gebruikersinterface van browseracties .

Je kunt een pagina-actie weergeven of grijs maken met respectievelijk de methoden pageAction.show en pageAction.hide . Standaard is een pagina-actie grijs weergegeven. Wanneer je deze weergeeft, geef je aan in welk tabblad het pictogram moet verschijnen. Het pictogram blijft zichtbaar totdat het tabblad wordt gesloten of een andere URL wordt weergegeven (bijvoorbeeld omdat de gebruiker op een link klikt).

Tips

Volg deze richtlijnen voor het beste visuele effect:

  • Gebruik pagina-acties alleen voor functies die relevant zijn voor een beperkt aantal pagina's.
  • Gebruik geen pagina-acties voor functies die voor de meeste pagina's zinvol zijn. Gebruik in plaats daarvan browseracties .
  • Animeer je icoontje niet constant. Dat is gewoon irritant.

Soorten

ImageDataType

Pixelgegevens voor een afbeelding. Moet een ImageData-object zijn (bijvoorbeeld van een canvas element).

Type

Afbeeldingsgegevens

TabDetails

Chrome 88+

Eigenschappen

  • tabId

    nummer optioneel

    De ID van het tabblad waarvan de status moet worden opgevraagd. Als er geen tabblad is opgegeven, wordt de niet-tabbladspecifieke status geretourneerd.

Methoden

getPopup()

Belofte
chrome.pageAction.getPopup(
  details: TabDetails,
  callback?: function,
)
: Promise<string>

Haalt het HTML-document op dat als pop-up voor deze pagina-actie is ingesteld.

Parameters

  • details
  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (result: string) => void

    • resultaat

      snaar

Retourneert

  • Belofte<string>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

getTitle()

Belofte
chrome.pageAction.getTitle(
  details: TabDetails,
  callback?: function,
)
: Promise<string>

Geeft de titel van de pagina-actie weer.

Parameters

  • details
  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    (result: string) => void

    • resultaat

      snaar

Retourneert

  • Belofte<string>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

hide()

Belofte
chrome.pageAction.hide(
  tabId: number,
  callback?: function,
)
: Promise<void>

Verbergt de pagina-actie. Verborgen pagina-acties blijven zichtbaar in de Chrome-werkbalk, maar zijn grijs weergegeven.

Parameters

  • tabId

    nummer

    De ID van het tabblad waarvoor u de pagina-actie wilt wijzigen.

  • terugbelverzoek

    functie optioneel

    Chrome 67+

    De callback parameter ziet er als volgt uit:

    () => void

Retourneert

  • Promise<void>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

setIcon()

Belofte
chrome.pageAction.setIcon(
  details: object,
  callback?: function,
)
: Promise<void>

Hiermee wordt het pictogram voor de pagina-actie ingesteld. Het pictogram kan worden opgegeven als het pad naar een afbeeldingsbestand, als de pixelgegevens van een canvas-element, of als een woordenboek met een van beide. Ofwel het pad , ofwel de eigenschap `imageData` moet worden opgegeven.

Parameters

  • details

    voorwerp

    • iconIndex

      nummer optioneel

      Verouderd. Dit argument wordt genegeerd.

    • beeldgegevens

      ImageData | object optioneel

      Ofwel een ImageData-object, ofwel een dictionary {size -> ImageData} die het in te stellen pictogram vertegenwoordigt. Als het pictogram als een dictionary wordt opgegeven, wordt de daadwerkelijke afbeelding gekozen op basis van de pixeldichtheid van het scherm. Als het aantal afbeeldingspixels dat in één schermruimte-eenheid past gelijk is aan scale , wordt een afbeelding met de grootte scale * n geselecteerd, waarbij n de grootte van het pictogram in de gebruikersinterface is. Er moet minimaal één afbeelding worden opgegeven. Merk op dat 'details.imageData = foo' gelijk is aan 'details.imageData = {'16': foo}'.

    • pad

      tekenreeks | object optioneel

      Ofwel een relatief afbeeldingspad, ofwel een dictionary {grootte -> relatief afbeeldingspad} die verwijst naar het in te stellen pictogram. Als het pictogram als een dictionary wordt opgegeven, wordt de daadwerkelijke afbeelding gekozen op basis van de pixeldichtheid van het scherm. Als het aantal afbeeldingspixels dat in één schermruimte-eenheid past gelijk is scale , wordt een afbeelding met grootte scale * n geselecteerd, waarbij n de grootte van het pictogram in de gebruikersinterface is. Er moet minimaal één afbeelding worden opgegeven. Merk op dat 'details.path = foo' gelijk is aan 'details.path = {'16': foo}'.

    • tabId

      nummer

      De ID van het tabblad waarvoor u de pagina-actie wilt wijzigen.

  • terugbelverzoek

    functie optioneel

    De callback parameter ziet er als volgt uit:

    () => void

Retourneert

  • Promise<void>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

setPopup()

Belofte
chrome.pageAction.setPopup(
  details: object,
  callback?: function,
)
: Promise<void>

Hiermee wordt het HTML-document als pop-upvenster geopend wanneer de gebruiker op het actie-icoon van de pagina klikt.

Parameters

  • details

    voorwerp

    • pop-up

      snaar

      Het relatieve pad naar het HTML-bestand dat in een pop-up moet worden weergegeven. Indien ingesteld op een lege tekenreeks ( '' ), wordt er geen pop-up weergegeven.

    • tabId

      nummer

      De ID van het tabblad waarvoor u de pagina-actie wilt wijzigen.

  • terugbelverzoek

    functie optioneel

    Chrome 67+

    De callback parameter ziet er als volgt uit:

    () => void

Retourneert

  • Promise<void>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

setTitle()

Belofte
chrome.pageAction.setTitle(
  details: object,
  callback?: function,
)
: Promise<void>

Hiermee wordt de titel van de pagina-actie ingesteld. Deze wordt weergegeven in een tooltip boven de pagina-actie.

Parameters

  • details

    voorwerp

    • tabId

      nummer

      De ID van het tabblad waarvoor u de pagina-actie wilt wijzigen.

    • titel

      snaar

      De tooltiptekst.

  • terugbelverzoek

    functie optioneel

    Chrome 67+

    De callback parameter ziet er als volgt uit:

    () => void

Retourneert

  • Promise<void>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

show()

Belofte
chrome.pageAction.show(
  tabId: number,
  callback?: function,
)
: Promise<void>

Toont de pagina-actie. De pagina-actie wordt weergegeven wanneer het tabblad is geselecteerd.

Parameters

  • tabId

    nummer

    De ID van het tabblad waarvoor u de pagina-actie wilt wijzigen.

  • terugbelverzoek

    functie optioneel

    Chrome 67+

    De callback parameter ziet er als volgt uit:

    () => void

Retourneert

  • Promise<void>

    Chrome 101+

    Promises worden alleen ondersteund voor Manifest V3 en later; voor andere platforms moeten callbacks worden gebruikt.

Evenementen

onClicked

chrome.pageAction.onClicked.addListener(
  callback: function,
)

Deze gebeurtenis wordt geactiveerd wanneer er op een actie-icoon op de pagina wordt geklikt. Deze gebeurtenis wordt niet geactiveerd als de actie op de pagina een pop-upvenster bevat.

Parameters

  • terugbelverzoek

    functie

    De callback parameter ziet er als volgt uit:

    (tab: tabs.Tab) => void