Spec-Zone.ru › Web Extensions

Кнопка адресной строки

Обычно называемая кнопкой действия страницы (действие страницы), этот элемент пользовательского интерфейса представляет собой кнопку, добавленную в адресную строку браузера. Пользователи нажимают на кнопку для взаимодействия с расширениями.

Page action button is an icon of a dog paw print

Действия страницы и действия браузера

Кнопка адресной строки (или действие страницы) похожа на кнопку панели инструментов (или действие браузера).

Различия следующие:

  • Расположение кнопки:
    • Действие страницы отображается внутри адресной строки браузера.
    • Действие браузера отображается вне адресной строки, на панели инструментов браузера.
  • Видимость кнопки:
    • Действие страницы по умолчанию скрыто (хотя это значение по умолчанию может быть изменено через свойства show_matches и hide_matches ключа манифеста), и вы вызываете pageAction.show() и pageAction.hide(), чтобы отобразить или скрыть ее в конкретных вкладках.
    • Действие браузера всегда отображается.

Используйте действие страницы, когда действие относится к текущей странице. Используйте действие браузера, когда действие относится ко всему браузеру в целом или к многим страницам. Например:

Тип Действие закладок Действие содержимого Операция с вкладками
действие страницы Добавить эту страницу в закладки Улучшение Reddit Отправить вкладку
действие браузера Показать все закладки Включить блокирование рекламы Синхронизировать все открытые вкладки

Настройка действия страницы

Вы определяете свойства действия страницы, используя ключ page_action в файле manifest.json:

"page_action": {
  "browser_style": true,
  "default_icon": {
    "19": "button/geo-19.png",
    "38": "button/geo-38.png"
  },
  "default_title": "Whereami?"
}

Единственный обязательный ключ — default_icon.

Существует два способа указать действие страницы: с всплывающим окном или без него.

  • Без всплывающего окна: Когда пользователь нажимает на кнопку, в расширение отправляется событие, на которое расширение реагирует с помощью pageAction.onClicked:
    browser.pageAction.onClicked.addListener(handleClick);
    
  • Со всплывающим окном: событие click не отправляется. Вместо этого при нажатии на кнопку появляется всплывающее окно. Пользователь взаимодействует со всплывающим окном. При нажатии за пределами всплывающего окна оно автоматически закрывается. Более подробную информацию о создании и управлении всплывающими окнами см. в статье Всплывающее окно.

Обратите внимание, что ваше расширение может иметь только одно действие страницы.

Вы можете программно изменить любые свойства действия страницы, используя API pageAction.

Иконки

Подробные сведения о создании иконок для использования с действием страницы см. в разделе Иконография в документации Системы дизайна Acorn.

Примеры

В репозитории webextensions-examples на GitHub есть пример chill-out, который реализует действие страницы без всплывающего окна.

© 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/user_interface/Page_actions

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API