Конфигурирование sidebar_action должно быть только для определенных сайтов? - PullRequest
0 голосов
/ 09 декабря 2018

Я хочу создать расширение для Firefox, которое позволяет боковой панели автоматически показывать, когда пользователь переходит на определенные веб-страницы.

Например, скажем, я настроил его так, что если пользователь перейдет на google.com, ему будет представлена ​​боковая панель, которая позволит ему увидеть некоторые «предыдущие поиски», которые он сделал.

Я делаюне хочу, чтобы им приходилось нажимать действие меню / сочетание клавиш для его отображения.И я не хочу показывать это бесконечно.

Я просматривал эти ссылки, чтобы узнать, как использовать боковые панели:

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/user_interface/Sidebars

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json/sidebar_action

https://github.com/mdn/webextensions-examples/tree/master/annotate-page

Но они, кажется, не охватывают, как скрыть / показать боковые панели условно.Они просто любопытны, всегда показаны.Не совсем то, что я хочу.

Есть ли способ использовать боковые панели таким образом, или я должен использовать другой метод?

Ответы [ 2 ]

0 голосов
/ 21 декабря 2018

Этого можно достичь, указав хосты, которые могут быть либо одним из списка известных строк (например, «геолокация»), либо шаблоном соответствия, который дает доступ одному или нескольким хостам.

Вот пример части полномочий файла манифеста:

"permissions": [
  "tabs",
  "bookmarks",
  "http://www.blogger.com/",
  "http://*.google.com/",
  "unlimitedStorage"
],
0 голосов
/ 09 декабря 2018

Вы можете контролировать, когда ваше расширение будет вставлено в текущую страницу (таким образом, вызывая появление вашей боковой панели) или нет, основываясь на настройках разрешений в файле манифеста

manifest.json

...
"permissions": [
  ... 
  "http://*.google.com/",
  "http://*event*/",
  ...
],

В приведенном выше примере расширение будет работать только на google.com, а также на любом домене, содержащем слово event.Если вы хотите настроить таргетинг на домены, в которых слово event фигурирует как часть пути, тогда вы должны использовать что-то вроде

"http://*/*event*/*",

. Вы поняли.

Для получения дополнительной информации прочитайте Разработка расширений Google - объявить разрешения

...