1

我知道这两个 api 都用于将 Javascript 注入网页。Firefox 扩展开发中 loadSubScript 和 loadFrameScript 有什么区别吗?你会在什么情况下使用它们?

4

2 回答 2

1

我假设您在询问mozIJSSubscriptLoader.loadSubScript()nsIChromeFrameMessageManager.loadFrameScript()。这是两种完全不同的机制,唯一的相似之处是两者都可以加载和执行代码。

mozIJSSubscriptLoader并不意味着将代码加载到网页中 - 它的主要目标是动态加载扩展的部分内容。这是一种非常古老的机制,甚至早于JavaScript 代码模块

然而,目标loadFrameScript()是加载内容脚本,最初是为了支持多进程设置(e10s 项目)而引入的。它将加载将在网页上下文中以网页权限运行的脚本。无法与加载它的代码直接交互,只能进行消息传递。

于 2012-11-13T06:39:06.570 回答
0

大多数扩展没有任何理由使用 loadFrameScript。它的目标是远程调试

于 2012-11-12T11:52:25.607 回答