pageAction.setIcon()
Устанавливает значок для действия на странице.
Вы можете указать один значок, как путь к файлу изображения, или объект pageAction.ImageDataType.
Вы можете указать несколько значков разных размеров, предоставив словарь, содержащий несколько путей или объекты ImageData. Это значит, что значок не нужно масштабировать для устройства с другой плотностью пикселей.
Это асинхронная функция, которая возвращает Promise.
Синтаксис
let settingIcon = browser.pageAction.setIcon( details // object )
Параметры
details-
object. Объект, содержащий свойстваimageDataилиpathи свойствоtabId.-
imageDataНеобязательно -
илиpageAction.ImageDataTypeobject. Это либо один объектImageData, либо объект-словарь.Используйте объект-словарь, чтобы указать несколько объектов
ImageDataразных размеров, чтобы значок не нужно было масштабировать для устройства с другой плотностью пикселей. ЕслиimageDataявляется словарем, значение каждого свойства — это объектImageData, а его имя — размер, например так:{ 16: image16, 32: image32 }
Браузер выберет изображение, соответствующее плотности пикселей экрана. Более подробная информация об этом в разделе Выбор размеров значков.
-
pathНеобязательно -
stringилиobject. Это либо относительный путь к файлу значка, либо объект-словарь.Используйте объект-словарь, чтобы указать несколько файлов значков разных размеров, чтобы значок не нужно было масштабировать для устройства с другой плотностью пикселей. Если
pathявляется словарем, значение каждого свойства — это относительный путь, а его имя — размер, например так:{ 16: "path/to/image16.jpg", 32: "path/to/image32.jpg" }
Браузер выберет изображение, соответствующее плотности пикселей экрана. Более подробная информация об этом в разделе Выбор размеров значков.
Если
pathявляетсяnull, это сбросит значок действия на странице до значка, указанного в ключеpage_actionманифеста.Если
pathявляется"", это сбросит значок до глобального значка браузера по умолчанию (то есть, значка, используемого, если значок не задан в ключеpage_actionманифеста).Если
pathне указывает на допустимый значок, значок не будет отображен. tabId-
integer. Идентификатор вкладки, значок которой нужно установить.
-
Возвращаемое значение
A Promise, который будет выполнен без аргументов, как только значок будет установлен.
Совместимость с браузерами
| Рабочий стол | Мобильный | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
setIcon |
ДаДо Chrome 23,path не мог указать несколько файлов значков, а должен был быть строкой, указывающей путь к одному значку. |
14 | 45 | ? | 15 | 14 | ? | ? | 79 | ? | 15 | ? |
imageData |
23 | 79 | 45 | ? | 15 | 14 | ? | ? | Нет | ? | 15 | ? |
null |
Нет | Нет | 59 | ? | Нет | 14 | ? | ? | Нет | ? | 15 | ? |
Примеры
Установите значок для действия на странице при нажатии пользователем:
browser.pageAction.onClicked.addListener((tab) => { browser.pageAction.setIcon({ tabId: tab.id, path: "icons/icon-48.png" }); });
Примеры расширений
Примечание:
Этот API основан на API chrome.pageAction Chromium. Данная документация взята из page_action.json кода Chromium.
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/pageAction/setIcon