Firefox addon 在Firefox插件的main.js中包含数据目录中的库
在使用插件SDK的Firefox插件中,我试图在Firefox addon 在Firefox插件的main.js中包含数据目录中的库,firefox-addon,firefox-addon-sdk,Firefox Addon,Firefox Addon Sdk,在使用插件SDK的Firefox插件中,我试图在main.js中包含data目录中的两个库文件,但它不起作用 我有以下目录结构: data -- jquery-latest.min.js -- pagemodscript.js -- mylibrary.js lib -- main.js pagemodscript.js使用jQuery,这很有效(使用contentScriptFile) 我还想在main.js中使用jQuery和mylibrary.js,但这不起作用 我尝试过的各种方法都会
main.js
中包含data
目录中的两个库文件,但它不起作用
我有以下目录结构:
data
-- jquery-latest.min.js
-- pagemodscript.js
-- mylibrary.js
lib
-- main.js
pagemodscript.js
使用jQuery,这很有效(使用contentScriptFile
)
我还想在main.js
中使用jQuery和mylibrary.js
,但这不起作用
我尝试过的各种方法都会导致错误消息“ReferenceError:[mylibrary.js中的类]未定义”、“ModuleNotFoundError:无法满足:require(mylibrary.js)”和“无权加载”
我尝试移动mylibrary.js
并将jquery latest.min.js
复制到lib
,但这导致了其中一条错误消息
最好的设置方法是什么
注意:我想在main.js
中使用jQuery的原因是,在pagemodscript.js
生成的事件之后,我想main.js
向当前页面添加一个div,其中它将显示从pagemodscript.js
生成的另一个事件创建的对象列表。让pagemodscript.js
创建这些对象并创建div是更好的做法吗?在这种情况下,这将起作用:我将使用contentScriptFile
将mylibrary.js
加载到pagemodscript.js
中。在这种情况下,pagemodscript.js
将创建mylibrary.js
中定义的类的对象,而这似乎不像我希望的那样是一种好的设计
我还想在main.js
中使用jQuery和mylibrary.js
那对你没有任何好处。jQuery希望在窗口中运行并与DOM一起工作。扩展文件在完全不同的环境中执行-没有可访问的窗口,一些典型的窗口函数不可用。此外,扩展文件根本不允许访问DOM,所有网页访问都必须在内容脚本中进行
我想要main.js
向当前页面添加一个div
您应该向内容脚本(
pagemodscript.js
)发送一条消息,让它为您创建div。这就是插件SDK的工作原理。发布后,我仔细阅读并按照您描述的方式工作。