schwobeseggl.de ein Neigschmecktr in Baden

18Nov/08Off

Javascript aus FF-Erweiterung in der Webseite benutzen

Langer Titel, kurzer Blogeintrag. Ich bastel gerade daran rum, diverse Javascript-Funktionen innerhalb der HTML-Seite zu benutzen. Das kann ziemlich hässlich werden:

var head = this.getContentDocument().getElementsByTagName("head")[0];
var script = this.getContentDocument().createElement("script");
var showImage = this.getContentDocument().createTextNode("function showImage(id) { "
		 + "var image = document.getElementById(id);"
		 + "image.style.display = \"inline\"; "
		 + "image.parentNode.previousSibling.addEventListener(\"mouseout\",
		 function() {"
		 + "window.setTimeout(fadeImage, 1500, id);"
		 + "}, false)"
		 + "}");
script.appendChild(showImage);
head.appendChild(script);

Alles doppelt escapen und so. Kein Spass. Hässlich zum Lesen. Lösung:

var head = this.getContentDocument().getElementsByTagName("head")[0];
var script = this.getContentDocument().createElement("script");
script.setAttribute("src", "resource://jslibs/foobar.js");
script.setAttribute("type", "text/javascript");
head.appendChild(script);

Nix spektakuläres, aber innerhalb der Datei "foobar.js" kann man jetzt 'ganz normales' Javascript schreiben. Ich freu mich über sowas ;)

  1. Javascript dynamisch laden
  2. public, private und “privileged” in Javascript
  3. Javascript-Klassen und Objekte
  4. Vererbung in Javascript anhand von Exceptions
  5. Javascript: getter und setter

Kommentare (0) Trackbacks (0)

Die Kommentarfunktion ist hier derzeit deaktiviert.

Trackbacks are disabled.