Beschrijving
Gebruik de chrome.pageAction
API om pictogrammen in de hoofdwerkbalk van Google Chrome te plaatsen, rechts van de adresbalk. Paginaacties vertegenwoordigen acties die op de huidige pagina kunnen worden uitgevoerd, maar die niet op alle pagina's van toepassing zijn. Pagina-acties worden grijs weergegeven als ze inactief zijn.
Beschikbaarheid
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 paginaactie waarmee u zich kunt abonneren op de RSS-feed voor de huidige pagina.
Verborgen paginaacties worden grijs weergegeven. De onderstaande RSS-feed is bijvoorbeeld grijs weergegeven, omdat u zich niet kunt abonneren op de feed voor de huidige pagina:
Overweeg in plaats daarvan een browseractie te gebruiken, zodat gebruikers altijd met uw extensie kunnen communiceren.
Manifest
Registreer uw paginaactie als volgt in het extensiemanifest :
{
"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 gebruikelijke schaalfactoren zoals 1,5x of 1,2x steeds gebruikelijker worden, wordt u aangeraden meerdere formaten voor uw pictogrammen op te geven. Chrome selecteert de dichtstbijzijnde en schaalt deze om de ruimte van 16 dips te vullen. Dit zorgt er ook voor dat als de weergavegrootte van het pictogram ooit wordt gewijzigd, u geen werk meer hoeft te doen om verschillende pictogrammen aan te bieden! Als het verschil in grootte echter te extreem is, kan deze schaling ervoor zorgen dat het pictogram details verliest of er wazig uitziet.
De oude syntaxis 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" }
},
...
}
Delen van de gebruikersinterface
Net als browseracties kunnen paginaacties een pictogram, knopinfo en pop-up hebben; ze kunnen echter geen badges hebben. Bovendien kunnen paginaacties grijs worden weergegeven. U kunt informatie over pictogrammen, tooltips en pop-ups vinden door te lezen over de gebruikersinterface van de browseractie .
U kunt een paginaactie weergeven en grijs maken met respectievelijk de methoden pageAction.show
en pageAction.hide
. Standaard wordt een paginaactie grijs weergegeven. Wanneer u het toont, geeft u het tabblad op waarin het pictogram moet verschijnen. Het icoontje blijft zichtbaar totdat het tabblad wordt gesloten of een andere URL begint weer te geven (bijvoorbeeld omdat de gebruiker op een link klikt).
Tips
Volg deze richtlijnen voor de beste visuele impact:
- Gebruik pagina-acties voor functies die slechts voor een paar pagina's zinvol zijn.
- Gebruik geen paginaacties voor functies die voor de meeste pagina's zinvol zijn. Gebruik in plaats daarvan browseracties .
- Animeer uw pictogram niet voortdurend. Dat is gewoon vervelend.
Soorten
ImageDataType
Pixelgegevens voor een afbeelding. Moet een ImageData-object zijn (bijvoorbeeld van een canvas
).
Type
Beeldgegevens
TabDetails
Eigenschappen
- tabId
nummer optioneel
De ID van het tabblad waarvoor de status moet worden opgevraagd. Als er geen tabblad is opgegeven, wordt de niet-tabbladspecifieke status geretourneerd.
Methoden
getPopup()
chrome.pageAction.getPopup(
details: TabDetails,
callback?: function,
)
Haalt het HTML-document op dat is ingesteld als pop-up voor deze paginaactie.
Parameters
- details
- terugbellen
functie optioneel
De
callback
parameter ziet er als volgt uit:(result: string) => void
- resultaat
snaar
Retouren
Beloof<tekenreeks>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
getTitle()
chrome.pageAction.getTitle(
details: TabDetails,
callback?: function,
)
Haalt de titel van de paginaactie op.
Parameters
- details
- terugbellen
functie optioneel
De
callback
parameter ziet er als volgt uit:(result: string) => void
- resultaat
snaar
Retouren
Beloof<tekenreeks>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
hide()
chrome.pageAction.hide(
tabId: number,
callback?: function,
)
Verbergt de paginaactie. Verborgen paginaacties verschijnen nog steeds in de Chrome-werkbalk, maar zijn grijs.
Parameters
- tabId
nummer
De ID van het tabblad waarvoor u de paginaactie wilt wijzigen.
- terugbellen
functie optioneel
Chroom 67+De
callback
parameter ziet er als volgt uit:() => void
Retouren
Beloof <nietig>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
setIcon()
chrome.pageAction.setIcon(
details: object,
callback?: function,
)
Stelt het pictogram voor de paginaactie in. Het pictogram kan worden opgegeven als het pad naar een afbeeldingsbestand of als de pixelgegevens van een canvaselement, of als woordenboek van een van beide. Het pad of de eigenschap imageData moet worden opgegeven.
Parameters
- details
voorwerp
- iconIndex
nummer optioneel
Afgekeurd. Dit argument wordt genegeerd.
- afbeeldingGegevens
Beeldgegevens | object optioneel
Een ImageData-object of een woordenboek {size -> ImageData} dat het in te stellen pictogram vertegenwoordigt. Als het pictogram als woordenboek is opgegeven, wordt de werkelijk te gebruiken afbeelding gekozen afhankelijk van de pixeldichtheid van het scherm. Als het aantal afbeeldingspixels dat in één schermruimte-eenheid past gelijk is
scale
, dan wordt afbeelding metscale
* n geselecteerd, waarbij n de grootte is van het pictogram in de gebruikersinterface. Er moet ten minste één afbeelding worden opgegeven. Houd er rekening mee dat 'details.imageData = foo' gelijk is aan 'details.imageData = {'16': foo}' - pad
tekenreeks | object optioneel
Ofwel een relatief afbeeldingspad, ofwel een woordenboek {grootte -> relatief afbeeldingspad} dat verwijst naar het in te stellen pictogram. Als het pictogram als woordenboek is opgegeven, wordt de werkelijk te gebruiken afbeelding gekozen afhankelijk van de pixeldichtheid van het scherm. Als het aantal afbeeldingspixels dat in één schermruimte-eenheid past gelijk is
scale
, dan wordt afbeelding metscale
* n geselecteerd, waarbij n de grootte is van het pictogram in de gebruikersinterface. Er moet ten minste één afbeelding worden opgegeven. Houd er rekening mee dat 'details.path = foo' gelijk is aan 'details.path = {'16': foo}' - tabId
nummer
De ID van het tabblad waarvoor u de paginaactie wilt wijzigen.
- terugbellen
functie optioneel
De
callback
parameter ziet er als volgt uit:() => void
Retouren
Beloof <nietig>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
setPopup()
chrome.pageAction.setPopup(
details: object,
callback?: function,
)
Stelt in dat het HTML-document wordt geopend als een pop-up wanneer de gebruiker op het pictogram van de paginaactie 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 de lege tekenreeks (
''
), wordt er geen pop-up weergegeven. - tabId
nummer
De ID van het tabblad waarvoor u de paginaactie wilt wijzigen.
- terugbellen
functie optioneel
Chroom 67+De
callback
parameter ziet er als volgt uit:() => void
Retouren
Beloof <nietig>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
setTitle()
chrome.pageAction.setTitle(
details: object,
callback?: function,
)
Stelt de titel van de paginaactie in. Dit wordt weergegeven in tooltip over de paginaactie.
Parameters
- details
voorwerp
- tabId
nummer
De ID van het tabblad waarvoor u de paginaactie wilt wijzigen.
- titel
snaar
De tooltiptekenreeks.
- terugbellen
functie optioneel
Chroom 67+De
callback
parameter ziet er als volgt uit:() => void
Retouren
Beloof <nietig>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
show()
chrome.pageAction.show(
tabId: number,
callback?: function,
)
Toont de paginaactie. De paginaactie wordt weergegeven wanneer het tabblad wordt geselecteerd.
Parameters
- tabId
nummer
De ID van het tabblad waarvoor u de paginaactie wilt wijzigen.
- terugbellen
functie optioneel
Chroom 67+De
callback
parameter ziet er als volgt uit:() => void
Retouren
Beloof <nietig>
Chroom 101+Beloftes worden alleen ondersteund voor Manifest V3 en hoger, andere platforms moeten callbacks gebruiken.
Evenementen
onClicked
chrome.pageAction.onClicked.addListener(
callback: function,
)
Wordt geactiveerd wanneer op een paginaactiepictogram wordt geklikt. Deze gebeurtenis wordt niet geactiveerd als de paginaactie een pop-up heeft.
Parameters
- terugbellen
functie
De
callback
parameter ziet er als volgt uit:(tab: tabs.Tab) => void
- tabblad