0

我是jetpack世界的新手(以及firefox扩展),在对jetpack的可能性进行一些研究时,我发现了一些奇怪的东西。我做了一个简单的测试项目,在 pagemod 中包含了一个 javascript 框架(RightJS)(本教程使用了 jQuery,这似乎工作正常),我得到了以下错误:

错误:发生异常。
回溯(最近一次通话最后):文件“/home/nic/Aptgeek/TestProjects”
中的文件“/home/nic/Aptgeek/TestProjects/ff-extension/data/external/libs/right-src.js”,第 5979 行
/ff-extension/data/external/libs/right-src.js",第 990 行,
类型错误:Array.include 不是函数

我的 main.js 脚本相当简单:

var pageMod = require("page-mod"); 
var self = require("self"); 
exports.main = function() { 
        pageMod.PageMod({ 
                include: "*", 
                contentScriptWhen: 'ready', 
                contentScriptFile: [self.data.url('external/libs/right-src.js'), 
                                    self.data.url('test.js')], 
                onAttach: function onAttach(worker) { 
                        worker.on('message', function(message) { 
                                console.log(message); 
                        }); 
                } 
        }); 
} 

看到那个讨论后: http ://groups.google.com/group/mozilla-labs-jetpack/browse_thread/thr ...,我开始怀疑jetpack javascript框架支持。我是否错误地使用了 page-mod?还是应该这样工作?在 page-mod 中使用 javascript 框架作为内容脚本是否有任何限制?

4

2 回答 2

1

Firefox 附加组件在原生类型被沙盒化的环境中运行。在 RightJS 中扩展这些原生类型的方式与沙盒环境相冲突。对 RightJS 进行了一些更改,以使其与 Firefox Add-on SDK (JetPack) 一起使用。

于 2011-03-29T19:34:48.230 回答
0

尝试使用 rightjs 的“安全模式”功能

http://rightjs.org/tutorials/safe-mode#safe

在这种安全模式下,RightJS 不会扩展任何东西,也不会将其函数和类放入全局范围(RightJS 对象本身除外)。

于 2011-04-24T08:25:38.307 回答