11Nov/08Off
Wie man das Laden einer Seite abfängt …
Ohne Witz. Seit 4 Wochen doktor ich daran rum und ENDLICH hab ich den richtigen (bzw. funktionellen) Weg gefunden wie man es macht:
overlay.xul:
<overlay id="extensionId"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript" src="chrome://extensionId/content/myJs.js"/>
</overlay>
</pre>
<strong>myJs.js:</strong>
<pre lang="javascript">
Components.utils.import("resource://jslibs/test.js");
function startupWrapper() {
var appcontent = document.getElementById("appcontent"); // browser
if (appcontent) {
appcontent.addEventListener("DOMContentLoaded", function() {
justATest(getBrowser());
}, true);
}
}
test.js:
var EXPORTED_SYMBOLS = ["justATest"];
justATest = function(gBrowser) {
var body = gBrowser.mCurrentBrowser.contentDocument.getElementsByTagName('body')[0];
}
Herzlichen Glückwunsch. Vorher hab ich "nur" auf DOMContentLoaded gehört, das hat mir dann aber beschert, dass meine Funktion pro XUL-Dokument aufgerufen wurde, also z.B. für die Web Developer Toolbar, die Locationbar, den Browser an sich und dann erst die Webseite. Vorher hab ich das kläglich mit
if (gBrowser.mCurrentBrowser.contentDocument.documentURI != "about:blank") {
// do something
}
abbeholfen, aber das ist ja doof
Jetzt gehts. Hooray
Ähnliche Artikel:
Schlagwörter
Addon
Amerika
Apple
Auto
bahn
bild
Computer
dell
Deutschland
eisdiele
Extension
fahrrad
Film
firefox
flash
geburtstag
google
Indiana
indianapolis
Internet
itunes
Java
Javascript
junit
kaputt
karlsruhe
Kino
Kinofilm
Laptop
last.fm
Linux
Microsoft
Mozilla
PHP
Praxissemester
skype
Spass
system
Thunderbird
umzug
USA
windows
wohnung
Wordpress
Zoll