2009-04-15 11 views

Antwort

0

Wenn Sie alle JavaScript-Dateien gesammelt haben und diese lokal mit Ihrer Firefox-Erweiterung verpacken, und die Ladefunktion von Google zum Laden von JavaScript von einem Server entworfen wurde, besteht das Problem, dass Sie den Lademechanismus nicht verwenden können Bibliothek. Verwenden Sie stattdessen Components.utils.import oder mozIJSSubScriptLoader je nach der Version von Firefox, auf die Sie ausgerichtet sind.

Möglicherweise müssen Sie den Code in der Google-Bibliothek bearbeiten, erweitern oder überschreiben.

2

Ich habe das gleiche Problem, aber nach was ich in Google JS-Code sehen kann, versucht es, Variable "google" zu Fenster hinzuzufügen, aber die Erweiterung wird geladen, wenn es noch kein Fenster gibt! Also wird es keine globale google Variable geben und deshalb tritt ein Fehler auf, wenn Sie versuchen, google.load() auszulösen. Ich denke, die Lösung besteht darin, das Skript dynamisch zu laden. Ich habe gefunden, nur ein vorhandenes Addon für Umschrift:

https:// addons.mozilla.org/pl/firefox/addon/8960

Sehen Sie, wie sie das Problem gelöst haben:

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 wird geladen, wenn DOMContentLoaded Ereignis occures, so dass, wenn der ganze Baum der Seite geladen wird (es scheint, es ist ein DOM entspricht Beiladen ist)

(Vergib mir, Leerzeichen in Links einzufügen, aber ansonsten wäre es mir nicht erlaubt, sie zu posten:)

Verwandte Themen