action
Добавляет кнопку на панель инструментов браузера.
Примечание: Этот API доступен в манифесте версии 3 или выше.
Действие браузера — это кнопка на панели инструментов браузера.
Вы можете связать с кнопкой всплывающее окно. Всплывающее окно задаётся с помощью HTML, CSS и JavaScript, как обычная веб-страница. JavaScript, выполняющийся во всплывающем окне, имеет доступ ко всем тем же API расширений WebExtension, что и ваши фоновые скрипты, но его глобальный контекст — это всплывающее окно, а не текущая страница, отображаемая в браузере. Чтобы повлиять на веб-страницы, вам нужно взаимодействовать с ними посредством сообщений.
Если вы зададите всплывающее окно, оно будет отображаться — и его содержимое будет загружено — при нажатии пользователем на значок. Если вы не зададите всплывающее окно, при нажатии пользователем на значок в ваше расширение будет отправлено событие.
Большинство свойств действия браузера можно задать декларативно с помощью ключа browser_action в файле manifest.json.
С помощью API action вы можете:
- использовать
action.onClickedдля прослушивания щелчков по значку. - получать и устанавливать свойства значка — значок, заголовок, всплывающее окно и так далее. Вы можете получать и устанавливать их глобально для всех вкладок или для конкретной вкладки, передав идентификатор вкладки в качестве дополнительного аргумента.
Типы
action.ColorArray-
Массив из четырёх целых чисел в диапазоне от 0 до 255, определяющий цвет RGBA.
action.ImageDataType-
Данные пикселей для изображения. Должен быть объектом
ImageData(например, из элемента<canvas>).
Функции
action.setTitle()-
Устанавливает заголовок действия браузера. Он будет отображаться в всплывающей подсказке.
action.getTitle()-
Получает заголовок действия браузера.
action.setIcon()-
Устанавливает значок действия браузера.
action.setPopup()-
Устанавливает HTML-документ, который будет открываться как всплывающее окно при нажатии пользователем на значок действия браузера.
action.getPopup()-
Получает HTML-документ, заданный в качестве всплывающего окна действия браузера.
action.openPopup()-
Открывает всплывающее окно действия браузера.
action.setBadgeText()-
Устанавливает текст значка действия браузера. Значок отображается поверх значка.
action.getBadgeText()-
Получает текст значка действия браузера.
action.setBadgeBackgroundColor()-
Устанавливает цвет фона значка.
action.getBadgeBackgroundColor()-
Получает цвет фона значка.
action.setBadgeTextColor()-
Устанавливает цвет текста значка.
action.getBadgeTextColor()-
Получает цвет текста значка.
action.enable()-
Включает действие браузера для вкладки. По умолчанию действия браузера включены для всех вкладок.
action.disable()-
Отключает действие браузера для вкладки, что означает, что на неё нельзя нажать, когда эта вкладка активна.
action.isEnabled()-
Проверяет, включено ли действие браузера.
События
action.onClicked-
Вызывается при щелчке по значку действия браузера. Это событие не будет вызвано, если действие браузера имеет всплывающее окно.
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
ColorArray |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
ImageDataType |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
action |
88 | 88 | 109 | ? | 74 | 16 | ? | ? | 109 | ? | 16 | ? |
disable |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
enable |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
getBadgeBackgroundColor |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
getBadgeText |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
getBadgeTextColor |
Нет | Нет | 109 | ? | Нет | Нет | ? | ? | 109 | ? | Нет | ? |
getPopup |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
getTitle |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
isEnabled |
Нет | Нет | 109 | ? | Нет | Нет | ? | ? | 109 | ? | Нет | ? |
onClicked |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
openPopup |
88 | 88 | 109Взаимодействие с пользователем не требуется для вызова этого API, если установлен параметрextensions.openPopupWithoutUserGesture.enabled (bug 1799344). |
? | 74 | 16 | ? | ? | 109Взаимодействие с пользователем не требуется для вызова этого API, если установлен параметрextensions.openPopupWithoutUserGesture.enabled (bug 1799344). |
? | 16 | ? |
setBadgeBackgroundColor |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
setBadgeText |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
setBadgeTextColor |
Нет | Нет | 109 | ? | Нет | Нет | ? | ? | 109 | ? | Нет | ? |
setIcon |
88 | 88["Этот вызов не сохраняется.", "ПараметрimageData не принимается.", "Параметр path обязателен."] |
109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
setPopup |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
setTitle |
88 | 88 | 109 | ? | 74 | Нет | ? | ? | 109 | ? | Нет | ? |
Примечание: Этот API основан на API chrome.action Chromium. Эта документация получена из browser_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/action