这是我非常简单的 Firefox 插件 main.js。我运行它并得到“loadContextGoodies 未定义”,这里出了什么问题?
const {Cc, Ci, Cu, Cr} = require("chrome");
var events = require("sdk/system/events");
var utils = require("sdk/window/utils");
var { MatchPattern } = require("sdk/util/match-pattern");
var pattern = new MatchPattern(/^https?:\/\/example\.com.*/);
function listener(event) {
var channel = event.subject.QueryInterface(Ci.nsIHttpChannel);
var url = event.subject.URI.spec;
if (isToBeRedirected(url)) {
channel.cancel(Cr.NS_BINDING_ABORTED);
var goodies = loadContextGoodies(channel);
var domWin = goodies.aDOMWindow;
var gBrowser = goodies.gBrowser;
var browser = goodies.browser;
var htmlWindow = goodies.contentWindow;
browser.loadURI("about:blank");
}
}
exports.main = function() {
events.on("http-on-modify-request", listener);
}
function isToBeRedirected(url) {
return pattern.test(url)
}
编辑:我完全忽略了用于重定向位的源代码部分,其中包含函数的声明。我没有注意到它是一个滚动框..不过还是谢谢你的回答。
最佳答案
根据该答案:https://stackoverflow.com/a/22429478/1170900
您需要声明loadContextGoodies
关于javascript - loadContextGoodies 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24888767/