Javascript Firefox扩展中的Google搜索API

Javascript Firefox扩展中的Google搜索API,javascript,import,firefox-addon,Javascript,Import,Firefox Addon,我正在开发一个firefox扩展,我需要包括Google搜索API。但是我在google.load('search','1')行中遇到了一个错误。谁能说出问题出在哪里 谢谢。如果您已经收集了所有JavaScript文件,并在本地将它们与Firefox扩展一起打包,而google的加载功能是为从服务器加载JavaScript而设计的,那么您的问题是无法使用该库中的加载机制。而是根据您所针对的Firefox版本,使用Components.utils.import或mozIJSSubScriptLoa

我正在开发一个firefox扩展,我需要包括Google搜索API。但是我在google.load('search','1')行中遇到了一个错误。谁能说出问题出在哪里


谢谢。

如果您已经收集了所有JavaScript文件,并在本地将它们与Firefox扩展一起打包,而google的加载功能是为从服务器加载JavaScript而设计的,那么您的问题是无法使用该库中的加载机制。而是根据您所针对的Firefox版本,使用Components.utils.import或mozIJSSubScriptLoader


这可能需要编辑、扩展或覆盖谷歌库中的代码

我也有同样的问题,但根据我在Google的JS代码中看到的情况,它试图将变量“Google”添加到窗口中,但在没有窗口时加载扩展名!因此,将没有全局google变量,因此当您尝试启动google.load()时会发生错误。 我认为解决方案是动态加载脚本。我刚刚找到一个现有的音译插件:

h t t p s://addons.mozilla.org/pl/firefox/addon/8960

看看他们是如何解决这个问题的:

onPageLoad: function(event) {
var doc = event.originalTarget;
var ele = doc.createElement('script');
ele.setAttribute('type', 'text/javascript');
ele.setAttribute('src', 'h t t p : / / www.google.com/jsapi?key=internal');
}

onPageLoad是在发生DOMContentLoaded事件时加载的,因此当加载页面的整个树时(看起来它是一个等同于onLoad的DOM)

(请原谅我在链接中插入空格,否则我将不被允许发布它们:)