配置sidebar_action仅适用于某些网站?

Nic*_*zza 5 javascript firefox firefox-addon firefox-sidebar

我想创建一个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

但它们似乎没有涵盖如何有条件地隐藏/显示侧边栏.他们只是有点,总是显示出来.不是我想要的.

有没有办法以这种方式使用侧边栏或我应该使用另一种方法?

Ahm*_*mad 6

您可以根据清单文件中的权限设置控制何时将扩展插入当前访问的页面(从而导致侧边栏显示)

的manifest.json

...
"permissions": [
  ... 
  "http://*.google.com/",
  "http://*event*/",
  ...
],
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,扩展程序仅适用于google.com以及包含该字词的任何域event.如果你想定位单词event作为路径的一部分出现的域,那么你会使用类似的东西

"http://*/*event*/*",
Run Code Online (Sandbox Code Playgroud)

你明白了.

有关更多信息,请阅读Google的扩展开发 - 声明权限