【发布时间】:2019-06-26 18:46:45
【问题描述】:
我在 Firefox 中有以下简化的书签,我正在尝试将其转换为网络扩展:
javascript:void%20function(){myobject.command(%22check%22,%22%22,this,%22%22)}();
当我单击小书签并运行 myobject.command 时,它可以正常工作。 myobject 是在 my.website.com 上创建的,并提供了几个可以通过 javascript 运行的命令。
由于我想单击任务栏中的图标而不是书签中的链接,因此我尝试通过将此命令添加到简单的内容脚本 (content.js) 来将其转换为 webextension/addon:
console.log("Hello");
myobject.command("check","",this,"");
console.log("Thanks for helping!");
我的 manifest.json 包含:
"content_scripts": [
{
"matches": ["*://my.website.com/*"],
"js": ["content.js"]
}]
这可确保内容脚本仅在 my.website.com 上运行。第一个 console.log 语句在 content.js 运行时显示,但不是第二个,因为脚本在 myobject.command 行失败。错误信息是“myobject is not defined”。
我做错了什么?为什么小书签可以工作,而内容脚本却不行?
【问题讨论】:
标签: firefox bookmarklet firefox-addon-webextensions