Действие — это то, что происходит, когда пользователь щелкает значок на панели инструментов, обычно называемый значком действия для вашего расширения. Действие вызывает функцию расширения с помощью Action API или открывает всплывающее окно . На этой странице показано, как вызвать функцию расширения. Чтобы использовать всплывающее окно, см. раздел «Добавление всплывающего окна» .
Зарегистрируйте действие
Чтобы использовать API chrome.action
, добавьте ключ "action"
в файл манифеста расширения. Полное описание необязательных свойств этого поля см. в разделе манифеста справочника по API chrome.action
.
манифест.json:
{
"name": "My Awesome action Extension",
...
"action": {
...
}
...
}
Реагируйте на действие
Зарегистрируйте обработчик onClicked
, когда пользователь щелкает значок действия. Это событие не запускается, если всплывающее окно зарегистрировано в файле манифеста.json.
сервис-worker.js:
chrome.action.onClicked.addListener((tab) => {
chrome.action.setTitle({
tabId: tab.id,
title: `You are on tab: ${tab.id}`});
});
Активировать действие условно
API chrome.declarativeContent
позволяет включить значок действия расширения на основе URL-адреса страницы или когда селекторы CSS соответствуют элементам на странице. Когда значок действия расширения отключен, он становится серым. Если пользователь щелкнет отключенный значок, появится контекстное меню расширения.
Значок действия
Значки — это фрагменты форматированного текста, размещаемые поверх значка действия для обозначения таких вещей, как состояние расширения или действия, необходимые пользователю. Чтобы продемонстрировать это, в образце « Питьевая вода » отображается значок «ВКЛ», показывающий пользователю, что он успешно установил будильник, и ничего не отображается, когда расширение не используется. Бейджи могут содержать до четырех символов.
Установите текст значка, вызвав chrome.action.setBadgeText()
, а цвет фона, вызвав chrome.action.setBadgeBackgroundColor()
` .
сервис-worker.js:
chrome.action.setBadgeText({text: 'ON'});
chrome.action.setBadgeBackgroundColor({color: '#4688F1'});
Подсказка
Зарегистрируйте всплывающие подсказки в поле "default_title"
под клавишей "action"
в файле Manifest.json.
манифест.json:
{
"name": "Tab Flipper",
...
"action": {
"default_title": "Press Ctrl(Win)/Command(Mac)+Shift+Right/Left to flip tabs"
}
...
}
Вы также можете установить или обновить всплывающие подсказки, вызвав action.setTitle()
` . Если подсказка не задана, отображается имя расширения.