Firefox扩展“ setBadgeText”不起作用

时间:2019-11-11 13:28:48

标签: javascript firefox-addon firefox-webextensions

我想扩展一个显示BadgeText的扩展名(如Adblock)。如果我在JS文件中写这行document.body.style.border = "5px solid red";,它就可以工作。红色边框会添加到每个网站。

现在我想做browser.browserAction.setBadgeText({text: "Hello world!"});

但是它什么也没做。

这是我的清单:

{

"description": "Shows the amount of cookies on a website",
"manifest_version": 2,
"name": "XXXXXX Cookies",
"permissions": ["cookies","<all_urls>","activeTab", "storage", "browsingData","contextualIdentities", "privacy", "notifications"],
"version": "1.0",
"homepage_url": "https://XXXXX.com",

"browser_action": {
"browser_style": true,
"default_title": "XXXXXX Cookie Manager",
"default_icon": {
  "48": "icons/icon48.png",
  "96": "icons/icon96.png"
}
},

"icons": {
"48": "icons/icon48.png",
"96": "icons/icon96.png"
},

"content_scripts": [
{
  "matches": ["<all_urls>"],
  "js": ["my.js"]
}
]

}

也许问题出在我的js文件的语法中。我只是写了没有任何功能的行。我对js完全陌生。

提前谢谢!

1 个答案:

答案 0 :(得分:0)

browserAction API在内容脚本中不可用。您必须将消息发送到后台脚本,然后从后台脚本进行设置。

另外,browserAction.setBadgeText的最大字符为4,因此只会显示Hell