我正在尝试使用pageMod在页面加载上运行脚本: 但我看不出它的影响
var data = require("sdk/self").data;
var attachTo = require("sdk/content/mod").attachTo;
var pageMod = require("sdk/page-mod");
pageMod.PageMod({
include: "*",
contentScriptWhen: "start",
allow:true,
attachTo: ["existing", "top"],
contentScriptFile: [data.url("jquery-2.1.1.min.js"),
data.url("somejs.js")],
})
在我的somejs.js文件中,我有覆盖表单提交功能:
document.forms['frmMain'].submit=function submit(){alert("Submitting")...
...do some stuff
};
在我的网页上有一个提交表单的按钮:
frmMain.method="post"
frmMain.action = "someurl";
frmMain.submit();
但是当我点击按钮时,它不会调用我在上面定义的覆盖方法。 当我使用firebug控制台覆盖该功能时它的工作原理! 那么firebug做什么来运行命令,以便我可以在我的插件代码中做同样的事情。
答案 0 :(得分:3)
每Interacting with page scripts你
以下适用于我:
function submit() {
console.log("Submitting");
alert("Submitting");
};
unsafeWindow.document.forms['frmMain'].submit =
exportFunction(submit, unsafeWindow);