Firefox扩展内容脚本调用/生命周期
问题描述:
我用下面的附加SDK创建了一个简单的Firefox附加组件,但它只能运行一次。我正在使用附加SDK的1.8版本。Firefox扩展内容脚本调用/生命周期
$ mkdir test_ext
$ cd test_ext
$ cfx init
$ cat >package.json
{
"name": "no2",
"license": "MPL 2.0",
"author": "",
"version": "0.1",
"fullName": "test_ext",
"id": "my-id",
"description": "a basic add-on"
}
$ cat >lib/main.js
<!-- language: lang-js -->
require("page-mod").PageMod({
include: ["*.org"],
contentScript: 'document.body.innerHTML = ' +
'"<h1>this page has been eaten</h1>";'
});
$ cfx run
现在在浏览器中,如果我去w3.org它的作品。如果我重新加载或转到不同的.org域名(如wwf.org),则不会发生任何事情。我怎样才能测试和应用任何新的页面?
答
我会写这样的方式是:
require("page-mod").PageMod({
include: ["*.co.uk"],
contentScript: 'document.body.innerHTML = ' +
'"<h1>this page has been eaten</h1>";'
});
我觉得你的代码的问题是使用“新”的关键字吗?
+0
没有解决它,更详细地描述了情况。 – 2012-07-10 15:20:47
我在main.js中单独测试了你的PageMod代码,它可以在任何.org站点(包括w3和wwf)中运行。在构建器网站上使用SDK 1.8。 – 2012-07-13 00:20:42
它只工作一次,我必须杀死与'cfx运行'产生的浏览器并再次运行'cfx运行',使其再次运行, – 2012-07-17 20:00:45
似乎工作正常,附加SDK 1.12,Firefox 14.0.1在Xubuntu 12.10上。 – 2012-12-14 04:17:03