pageAction.setIcon()
設定頁面操作的圖示。
您可以將單個圖示指定為影像檔案的路徑或 pageAction.ImageDataType 物件。
透過提供包含多個路徑或 ImageData 物件的字典,您可以指定不同尺寸的多個圖示。這意味著圖示不必為具有不同畫素密度的裝置進行縮放。
這是一個非同步函式,返回一個 Promise。
語法
let settingIcon = browser.pageAction.setIcon(
details // object
)
引數
details-
object。一個包含imageData或path屬性的物件,以及一個tabId屬性。imageData可選-
pageAction.ImageDataType或object。這要麼是一個單獨的ImageData物件,要麼是一個字典物件。使用字典物件指定不同尺寸的多個
ImageData物件,這樣圖示就不必為具有不同畫素密度的裝置進行縮放。如果imageData是字典,則每個屬性的值是一個ImageData物件,其名稱是其尺寸,如下所示:jslet settingIcon = browser.pageAction.setIcon({ imageData: { 16: image16, 32: image32, }, });瀏覽器將根據螢幕的畫素密度選擇要使用的影像。有關詳細資訊,請參閱 選擇圖示尺寸。
path可選-
string或object。這要麼是圖示檔案的相對路徑,要麼是一個字典物件。使用字典物件指定不同尺寸的多個圖示檔案,這樣圖示就不必為具有不同畫素密度的裝置進行縮放。如果
path是字典,則每個屬性的值是一個相對路徑,其名稱是其尺寸,如下所示:jslet settingIcon = browser.pageAction.setIcon({ path: { 16: "path/to/image16.jpg", 32: "path/to/image32.jpg", }, });瀏覽器將根據螢幕的畫素密度選擇要使用的影像。有關詳細資訊,請參閱 選擇圖示尺寸。
如果
path為null,這將把頁面操作的圖示重置為在page_actionmanifest 鍵中提供的圖示。如果
path為"",這將把圖示重置為瀏覽器的全域性預設圖示(即,如果在page_actionmanifest 鍵中未提供圖示時使用的圖示)。如果
path未指向有效的圖示,則不會顯示任何圖示。 tabId-
integer。您要設定圖示的標籤頁的 ID。
返回值
一個 Promise,一旦設定了圖示,它將以無引數的形式履行。
示例
當用戶單擊頁面操作時設定其圖示
browser.pageAction.onClicked.addListener((tab) => {
browser.pageAction.setIcon({
tabId: tab.id,
path: "icons/icon-48.png",
});
});
擴充套件程式示例
瀏覽器相容性
載入中…
注意:此 API 基於 Chromium 的 chrome.pageAction API。此文件源自 Chromium 程式碼中的 page_action.json。