Opis
Aby sterować ikoną rozszerzenia na pasku narzędzi Google Chrome, użyj interfejsu API chrome.action
.
Dostępność
Plik manifestu
Aby korzystać z interfejsu chrome.action
API, określ "manifest_version"
3
i uwzględnij klucz "action"
w pliku manifestu.
{
"name": "Action Extension",
...
"action": {
"default_icon": { // optional
"16": "images/icon16.png", // optional
"24": "images/icon24.png", // optional
"32": "images/icon32.png" // optional
},
"default_title": "Click Me", // optional, shown in tooltip
"default_popup": "popup.html" // optional
},
...
}
Klucz "action"
(wraz z jego elementami podrzędnymi) jest opcjonalny. Jeśli nie jest uwzględniony, rozszerzenie nadal będzie widoczne na pasku narzędzi, aby zapewnić dostęp do menu rozszerzenia. Dlatego zalecamy, aby zawsze uwzględniać co najmniej klucze "action"
i "default_icon"
.
Pojęcia i zastosowanie
Elementy interfejsu
Ikona
Ikona jest głównym obrazem na pasku narzędzi rozszerzenia i jest ustawiana przez klucz "default_icon"
w kluczu "action"
w pliku manifestu. Ikony muszą mieć 16 pikseli na szerokość i wysokość.
Klucz "default_icon"
to słownik rozmiarów do ścieżek obrazów. Chrome używa tych ikon do wyboru skali obrazu. Jeśli nie znajdzie dopasowania ścisłego, wybierze najbliższy dostępny obraz i dopasuje go do rozmiaru zdjęcia, co może wpłynąć na jego jakość.
Urządzenia z mniej popularnymi współczynnikami skalowania, takimi jak 1,5 x lub 1,2 x, stają się coraz bardziej powszechne, dlatego zalecamy udostępnianie ikon w różnych rozmiarach. Dzięki temu rozszerzenie będzie odporne na potencjalne zmiany rozmiaru ikony. Jeśli jednak podajesz tylko jeden rozmiar, klucz "default_icon"
może być ustawiony jako ciąg znaków z ścieżką do pojedynczej ikony zamiast słownika.
Możesz też wywołać funkcję action.setIcon()
, aby ustawić ikonę rozszerzenia programowo, podając inną ścieżkę obrazu lub podając ikonę wygenerowaną dynamicznie za pomocą elementu tła HTML. Jeśli ustawiasz tę opcję w ramach workera rozszerzenia, możesz użyć interfejsu offscreencanvas API.
const canvas = new OffscreenCanvas(16, 16);
const context = canvas.getContext('2d');
context.clearRect(0, 0, 16, 16);
context.fillStyle = '#00FF00'; // Green
context.fillRect(0, 0, 16, 16);
const imageData = context.getImageData(0, 0, 16, 16);
chrome.action.setIcon({imageData: imageData}, () => { /* ... */ });
W przypadku spakowanych rozszerzeń (zainstalowanych z pliku .crx) obrazy mogą być w większości formatów, które może wyświetlać silnik renderowania Blink, m.in. PNG, JPEG, BMP, ICO i inne. Format SVG nie jest obsługiwany. Rozpakowane rozszerzenia muszą zawierać obrazy w formacie PNG.
Etykieta (tytuł)
Etykieta lub tytuł wyświetla się, gdy użytkownik najedzie kursorem na ikonę rozszerzenia na pasku narzędzi. Jest on też uwzględniony w tekstach na potrzeby ułatwień dostępu odczytywanych przez czytniki ekranu, gdy przycisk jest aktywny.
Domyślny tekst podpowiadania jest ustawiany za pomocą pola "default_title"
klucza "action"
w manifest.json
.
Możesz też ustawić go programowo, wywołując funkcję action.setTitle()
.
Plakietka
Czynności mogą opcjonalnie wyświetlać „odznakę” – krótki tekst nałożony na ikonę. Dzięki temu możesz zaktualizować działanie, aby wyświetlać niewielką ilość informacji o stanie rozszerzenia, na przykład licznik. Plakietka zawiera komponent tekstowy i kolor tła. Ponieważ miejsce jest ograniczone, zalecamy, aby tekst na plakietce zawierał maksymalnie 4 znaki.
Aby utworzyć plakietkę, skonfiguruj ją programowo, wywołując funkcje action.setBadgeBackgroundColor()
i action.setBadgeText()
. W pliku manifestu nie ma ustawienia domyślnego plakietki. Wartości koloru plakietki mogą być tablicą 4 liczb całkowitych z zakresu 0–255, które tworzą kolor RGBA plakietki, lub ciągiem znaków z wartością kolorów CSS.
chrome.action.setBadgeBackgroundColor(
{color: [0, 255, 0, 0]}, // Green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: '#00FF00'}, // Also green
() => { /* ... */ },
);
chrome.action.setBadgeBackgroundColor(
{color: 'green'}, // Also, also green
() => { /* ... */ },
);
Wyskakujące okienko
Gdy użytkownik kliknie przycisk działania rozszerzenia na pasku narzędzi, wyświetli się wyskakujące okienko działania. Okienko może zawierać dowolne treści w formacie HTML. Jego rozmiary zostaną automatycznie dopasowane do zawartości. Rozmiar wyskakującego okienka musi mieścić się w zakresie od 25 x 25 do 800 x 600 pikseli.
Pojawiający się okno jest początkowo ustawiane przez właściwość "default_popup"
w kluczu "action"
w pliku manifest.json
. Jeśli jest obecna, powinna wskazywać ścieżkę względną w katalogu rozszerzeń. Może ona też być aktualizowana dynamicznie, aby wskazywać inną ścieżkę względną za pomocą metody action.setPopup()
.
Przypadki użycia
Stan karty
Działania rozszerzenia mogą mieć różne stany na poszczególnych kartach. Aby ustawić wartość dla pojedynczej karty, użyj właściwości tabId
w metodach ustawień interfejsu API action
. Aby na przykład zmienić tekst plakietki na konkretnej karcie, wykonaj te czynności:
function getTabId() { /* ... */}
function getTabBadge() { /* ... */}
chrome.action.setBadgeText(
{
text: getTabBadge(tabId),
tabId: getTabId(),
},
() => { ... }
);
Jeśli właściwość tabId
zostanie pominięta, ustawienie zostanie potraktowane jako ustawienie globalne. Ustawienia dotyczące konkretnej karty mają pierwszeństwo przed ustawieniami globalnymi.
Stan włączenia
Domyślnie na każdej karcie są włączone (czyli można je kliknąć) działania paska narzędzi. Możesz zmienić tę wartość domyślną, ustawiając właściwość default_state
w kluczu action
pliku manifestu. Jeśli akcja default_state
jest ustawiona na "disabled"
, jest domyślnie wyłączona i aby była klikalna, musisz ją włączyć programowo. Jeśli default_state
ma wartość "enabled"
(domyślnie), działanie jest domyślnie włączone i klikalne.
Stanem możesz sterować programowo za pomocą metod action.enable()
i action.disable()
. To ustawienie ma wpływ tylko na to, czy do Twojego rozszerzenia zostanie wysłane wyskakujące okienko (jeśli występuje) lub zdarzenie action.onClicked
. Nie ma wpływu na obecność działania na pasku narzędzi.
Przykłady
Przykłady poniżej pokazują typowe sposoby używania działań w rozszerzeniach. Aby wypróbować ten interfejs API, zainstaluj przykład interfejsu Action API z repozytorium chrome-extension-samples.
Pokaż wyskakujące okienko
Rozszerzenie często wyświetla wyskakujące okienko, gdy użytkownik kliknie działanie rozszerzenia. Aby zaimplementować to w swoim rozszerzeniu, zadeklaruj wyskakujące okienko w pliku manifest.json
i określ zawartość, którą Chrome ma wyświetlać w wyskakującym okienku.
// manifest.json
{
"name": "Action popup demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to view a popup",
"default_popup": "popup.html"
}
}
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
<style>
html {
min-height: 5em;
min-width: 10em;
background: salmon;
}
</style>
</head>
<body>
<p>Hello, world!</p>
</body>
</html>
Wstrzyknij skrypt treści po kliknięciu
Typowym wzorcem jest udostępnianie głównej funkcji rozszerzenia za pomocą jego działania. Ten przykład pokazuje ten wzór. Gdy użytkownik kliknie działanie, rozszerzenie wstrzykuje skrypt treści na bieżącą stronę. Następnie skrypt treści wyświetla alert, aby potwierdzić, że wszystko działa zgodnie z oczekiwaniami.
// manifest.json
{
"name": "Action script injection demo",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_title": "Click to show an alert"
},
"permissions": ["activeTab", "scripting"],
"background": {
"service_worker": "background.js"
}
}
// background.js
chrome.action.onClicked.addListener((tab) => {
chrome.scripting.executeScript({
target: {tabId: tab.id},
files: ['content.js']
});
});
// content.js
alert('Hello, world!');
Emulowanie działań za pomocą deklaratywnego kodu
Ten przykład pokazuje, jak logika tła rozszerzenia może (a) domyślnie wyłączyć działanie i (b) używać declarativeContent, aby włączyć działanie w określonych witrynach.
// service-worker.js
// Wrap in an onInstalled callback to avoid unnecessary work
// every time the service worker is run
chrome.runtime.onInstalled.addListener(() => {
// Page actions are disabled by default and enabled on select tabs
chrome.action.disable();
// Clear all rules to ensure only our expected rules are set
chrome.declarativeContent.onPageChanged.removeRules(undefined, () => {
// Declare a rule to enable the action on example.com pages
let exampleRule = {
conditions: [
new chrome.declarativeContent.PageStateMatcher({
pageUrl: {hostSuffix: '.example.com'},
})
],
actions: [new chrome.declarativeContent.ShowAction()],
};
// Finally, apply our new array of rules
let rules = [exampleRule];
chrome.declarativeContent.onPageChanged.addRules(rules);
});
});
Typy
OpenPopupOptions
Właściwości
-
windowId
number opcjonalny
Identyfikator okna, w którym ma się otworzyć wyskakujące okienko. Jeśli nie zostanie określone, domyślnie jest to aktualnie aktywne okno.
TabDetails
Właściwości
-
tabId
number opcjonalny
Identyfikator karty, której stan chcesz sprawdzić. Jeśli nie określisz karty, zwrócony zostanie stan nieokreślony.
UserSettings
Zbiór ustawień określonych przez użytkownika dotyczących działania rozszerzenia.
Właściwości
-
isOnToolbar
wartość logiczna
Czy ikona działania rozszerzenia jest widoczna na pasku narzędzi najwyższego poziomu w oknach przeglądarki (czyli czy rozszerzenie zostało przez użytkownika „przypięte”).
UserSettingsChange
Właściwości
-
isOnToolbar
wartość logiczna opcjonalna
Czy ikona działania rozszerzenia jest widoczna na pasku narzędzi najwyższego poziomu w oknach przeglądarki (czyli czy rozszerzenie zostało przez użytkownika „przypięte”).
Metody
disable()
chrome.action.disable(
tabId?: number,
callback?: function,
)
Wyłącza działanie na karcie.
Parametry
-
tabId
number opcjonalny
Identyfikator karty, dla której chcesz zmodyfikować działanie.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
enable()
chrome.action.enable(
tabId?: number,
callback?: function,
)
Umożliwia działanie na karcie. Domyślnie działania są włączone.
Parametry
-
tabId
number opcjonalny
Identyfikator karty, dla której chcesz zmodyfikować działanie.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getBadgeBackgroundColor()
chrome.action.getBadgeBackgroundColor(
details: TabDetails,
callback?: function,
)
Pobiera kolor tła działania.
Parametry
-
szczegóły
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(result: ColorArray) => void
-
wynik
-
Zwroty
-
Obietnica<browserAction.ColorArray>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getBadgeText()
chrome.action.getBadgeText(
details: TabDetails,
callback?: function,
)
Pobiera tekst plakietki działania. Jeśli nie określisz karty, zwrócony zostanie tekst plakietki nieprzypisanej do żadnej karty. Jeśli włączona jest opcja displayActionCountAsBadgeText, zwrócony zostanie tekst zastępczy, chyba że występuje uprawnienie declarativeNetRequestFeedback lub podano tekst plakietki dla konkretnej karty.
Parametry
-
szczegóły
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(result: string) => void
-
wynik
ciąg znaków
-
Zwroty
-
Promise<string>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getBadgeTextColor()
chrome.action.getBadgeTextColor(
details: TabDetails,
callback?: function,
)
Pobiera kolor tekstu działania.
Parametry
-
szczegóły
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(result: ColorArray) => void
-
wynik
-
Zwroty
-
Obietnica<browserAction.ColorArray>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getPopup()
chrome.action.getPopup(
details: TabDetails,
callback?: function,
)
Pobiera dokument HTML ustawiony jako wyskakujące okienko dla tego działania.
Parametry
-
szczegóły
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(result: string) => void
-
wynik
ciąg znaków
-
Zwroty
-
Promise<string>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getTitle()
chrome.action.getTitle(
details: TabDetails,
callback?: function,
)
Pobiera tytuł działania.
Parametry
-
szczegóły
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(result: string) => void
-
wynik
ciąg znaków
-
Zwroty
-
Promise<string>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
getUserSettings()
chrome.action.getUserSettings(
callback?: function,
)
Zwraca określone przez użytkownika ustawienia dotyczące działania rozszerzenia.
Parametry
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(userSettings: UserSettings) => void
-
userSettings
-
Zwroty
-
Obietnice<UserSettings>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
isEnabled()
chrome.action.isEnabled(
tabId?: number,
callback?: function,
)
Wskazuje, czy działanie rozszerzenia jest włączone na karcie (lub globalnie, jeśli nie podano wartości tabId
). Działania włączone tylko za pomocą declarativeContent
zawsze zwracają wartość false.
Parametry
-
tabId
number opcjonalny
Identyfikator karty, której stan włączenia chcesz sprawdzić.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:(isEnabled: boolean) => void
-
isEnabled
wartość logiczna
TRUE, jeśli działanie rozszerzenia jest włączone.
-
Zwroty
-
Promise<boolean>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
openPopup()
chrome.action.openPopup(
options?: OpenPopupOptions,
callback?: function,
)
Otwiera wyskakujące okienko rozszerzenia. W wersjach Chrome od 118 do 126 jest ona dostępna tylko dla rozszerzeń zainstalowanych na podstawie zasad.
Parametry
-
Opcje
OpenPopupOptions opcjonalnie
Określa opcje otwierania wyskakującego okienka.
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setBadgeBackgroundColor()
chrome.action.setBadgeBackgroundColor(
details: object,
callback?: function,
)
Ustawia kolor tła plakietki.
Parametry
-
szczegóły
Obiekt
-
kolor
ciąg znaków | ColorArray
Tablica czterech liczb całkowitych z zakresu [0,255], które tworzą kolor RGBA plakietki. Na przykład nieprzezroczysty czerwony to
[255, 0, 0, 255]
. Może to być też ciąg znaków z wartością CSS, przy czym nieprzezroczysta czerwień to#FF0000
lub#F00
. -
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setBadgeText()
chrome.action.setBadgeText(
details: object,
callback?: function,
)
Ustawia tekst plakietki dla działania. Odznaka jest wyświetlana nad ikoną.
Parametry
-
szczegóły
Obiekt
-
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
tekst
string opcjonalny
Możesz podać dowolną liczbę znaków, ale w tym miejscu mieści się tylko około 4 znaków. Jeśli podasz pusty ciąg znaków (
''
), tekst plakietki zostanie wyczyszczony. Jeśli określona jest wartośćtabId
, a wartośćtext
jest pusta, tekst na określonej karcie jest usuwany i zastępowany domyślnym tekstem plakietki.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setBadgeTextColor()
chrome.action.setBadgeTextColor(
details: object,
callback?: function,
)
Ustawia kolor tekstu na plakietce.
Parametry
-
szczegóły
Obiekt
-
kolor
ciąg znaków | ColorArray
Tablica czterech liczb całkowitych z zakresu [0,255], które tworzą kolor RGBA plakietki. Na przykład nieprzezroczysty czerwony to
[255, 0, 0, 255]
. Może to być też ciąg znaków z wartością CSS, przy czym nieprzezroczysta czerwień to#FF0000
lub#F00
. Jeśli nie ustawisz tej wartości, zostanie automatycznie wybrany kolor kontrastujący z kolorem tła plakietki, aby tekst był widoczny. Kolory o wartościach alfa równych 0 nie zostaną ustawione i zwrócą błąd. -
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setIcon()
chrome.action.setIcon(
details: object,
callback?: function,
)
Ustawia ikonę działania. Ikona może być określona jako ścieżka do pliku obrazu lub jako dane pikseli z elementu na kanwie albo jako słownik jednego z tych elementów. Należy podać właściwość path lub imageData.
Parametry
-
szczegóły
Obiekt
-
imageData
ImageData | object optional
Obiekt ImageData lub słownik {size -> ImageData} reprezentujący ikonę do ustawienia. Jeśli ikona jest określona jako słownik, rzeczywisty obraz jest wybierany w zależności od gęstości pikseli ekranu. Jeśli liczba pikseli obrazu, która mieści się w jednej jednostce przestrzeni ekranu, wynosi
scale
, zostanie wybrany obraz o rozmiarzescale
* n, gdzie n to rozmiar ikony w interfejsie. Musisz podać co najmniej 1 obraz. Pamiętaj, że 'details.imageData = foo' jest równoważne z 'details.imageData = {'16': foo}'. -
ścieżka
string | object opcjonalnie
Ścieżka względna do obrazu lub słownik {size -> relative image path} wskazujący ikonę do ustawienia. Jeśli ikona jest określona jako słownik, rzeczywisty obraz jest wybierany w zależności od gęstości pikseli ekranu. Jeśli liczba pikseli obrazu, która mieści się w jednej jednostce przestrzeni ekranu, wynosi
scale
, zostanie wybrany obraz o rozmiarzescale
* n, gdzie n to rozmiar ikony w interfejsie. Musisz podać co najmniej 1 obraz. Pamiętaj, że 'details.path = foo' jest równoważne z 'details.path = {'16': foo}'. -
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Chrome 96 i nowszeObietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setPopup()
chrome.action.setPopup(
details: object,
callback?: function,
)
Ustawia dokument HTML do otwarcia jako wyskakujące okienko, gdy użytkownik kliknie ikonę działania.
Parametry
-
szczegóły
Obiekt
-
wyskakujące okienko
ciąg znaków
Ścieżka względna do pliku HTML, który ma się wyświetlać w wyskakującym okienku. Jeśli jest ustawiony na pusty ciąg znaków (
''
), nie wyświetla się wyskakujące okienko. -
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
setTitle()
chrome.action.setTitle(
details: object,
callback?: function,
)
Ustawia tytuł działania. Wyświetla się ona w etykiecie.
Parametry
-
szczegóły
Obiekt
-
tabId
number opcjonalny
Ogranicza zmianę do momentu wybrania konkretnej karty. Automatycznie resetuje się po zamknięciu karty.
-
tytuł
ciąg znaków
Ciąg znaków, który powinien wyświetlać się po najechaniu kursorem na działanie.
-
-
wywołanie zwrotne
function opcjonalny
Parametr
callback
ma postać:() => void
Zwroty
-
Obietnica<void>
Obietnice są obsługiwane w pliku manifestu w wersji 3 i późniejszych, ale wywołania zwrotne są dostępne ze względu na zgodność wsteczną. Nie możesz używać obu w tym samym wywołaniu funkcji. Obiet na obietnice zwracany jest z tym samym typem, który jest przekazywany do funkcji zwracającej wywołanie zwrotne.
Wydarzenia
onClicked
chrome.action.onClicked.addListener(
callback: function,
)
Uruchamiane po kliknięciu ikony działania. To zdarzenie nie zostanie wywołane, jeśli działanie ma wyskakujące okienko.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(tab: tabs.Tab) => void
-
tabulator
-
onUserSettingsChanged
chrome.action.onUserSettingsChanged.addListener(
callback: function,
)
Wywoływane, gdy ustawienia określone przez użytkownika dotyczące działania rozszerzenia ulegną zmianie.
Parametry
-
wywołanie zwrotne
funkcja
Parametr
callback
ma postać:(change: UserSettingsChange) => void
-
zmień
-