javascript getElementby...

  • Hab noch kein FireFox-Addon geschrieben.

    Ich möchte das ich wenn die seite geladen wird/wurde in Formulafelder von denen ich die ID kenne bestimmte Werte hinein schreiben.

    Hab mir eine kleine Website mit einem Formulafeld geschrieben und ein javascript in der Seite selbst um das was ich geschrieben habe zu testen. Wenn der javascript code in der seite eingebaut ist funkioniert er.

    Wenn ich den Code bei meinem Firefox-addon aufrufe passiert nix.

    Habe zum Schluss meinen Versuchs-Code-Ausschnitt gepostet. "mache4" wird noch ausgegeben.
    in "document.getElementById('bodyid').appendChild(myH1);" scheint ein Fehler zu sein.
    Verstehe aber nicht warum, denn direkt in eine Website eingebunden funktioniert der Code

    Ich kann ich auch nicht ausschießen das vl in einem der anderen Files etwas fehlt.


    edit: muss ich eigentlich vor "document" noch mit irgendwas schreiben um einen bestimmten Tab anzusprechen?

    Einmal editiert, zuletzt von buhh (13. September 2010 um 19:18)

  • Ja, grundsätzlich wahrscheinlich schon.

    Ich möcht aber auch a bissl was lernen. Bei Greadsemonkey reicht ws schon javascript.
    Vor allem interessiert mich wo momentan mein Fehler lieg das ich das nicht zum laufen bekomm.

  • Dein Fehler liegt evtl. im Gesamtverständnis von add-ons.
    Ein "document" im Add-on bezieht sich auf das aktuelle XUL Fenster. Wenn z.B. aus einem javascript aufgerufen, daß in einem browser overlay eingebunden ist, dann bezieht sich document auf das Browser-Fenster (also Menüs, Statusbar etc.).

    Das gilt natürlich auch für event-handler die man auf dieses Document anwendet. Ein "load" Event wird also z.B. ausgeführt sobald das Firefox-Fenster geladen wurde (also typischerweise beim Firefox-Start).

    Etwas aus dem Zusammenhang gerissen ist das hier ein Beispiel wie man an ein passendes document objekt kommt:
    https://developer.mozilla.org/en/XUL_School/…ting_Page_Loads

    Generell kann man auch (aus dem overlay kontext) über gBrowser.contentDocument an das aktuell angezeigte Dokument kommen. Nur ob das immer das richtige ist?