我正在开发一个 Firefox 插件。我想要做的是注入(inject)自定义 JavaScript 函数。
即
function foo() {..}
因此所有页面都可以调用 foo 而无需先定义它。
我看过其他答案,例如:http://groups.google.com/group/greasemonkey-users/browse_thread/thread/3d82a2e7322c3fce
但需要在网页上进行修改。如果我想将函数 foo 注入(inject) Google.com 怎么办?有可能吗?
我可以使用用户脚本来完成,但我想尽可能使用扩展方法。
最佳答案
在阅读您的问题时,我首先想到的是“这看起来像是一个骗局”。你想达到什么目的?
无论如何,这里是a Jetpack (Add-on builder) add-on that injects a script in every page loaded :
main.js:
const self = require("self"),
page_mod = require("page-mod");
exports.main = function() {
page_mod.PageMod({
include: "*",
contentScriptWhen: "ready",
contentScriptFile: self.data.url("inject.js")
});
};
注入(inject).js:
unsafeWindow.foo = function() {
alert('hi');
}
unsafeWindow.foo();
关于javascript - 如何使用 Firefox 扩展将 JavaScript 函数注入(inject)所有网页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8872152/