5

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

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

有没有办法以这种方式使用侧边栏,还是应该使用另一种方法?

4

2 回答 2

7

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

清单.json

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

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

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

你明白了。

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

于 2018-12-09T07:04:12.760 回答
1

这可以通过指定主机来实现,主机可以是已知字符串列表之一(例如“地理位置”),也可以是允许访问一个或多个主机的匹配模式。

这是清单文件的权限部分的示例:

"permissions": [
  "tabs",
  "bookmarks",
  "http://www.blogger.com/",
  "http://*.google.com/",
  "unlimitedStorage"
],
于 2018-12-21T08:37:01.617 回答