Andreas Nagel: dem Body eine Funktion zuweisen

Hallo zusammen

ich würde gerne dem Body tag einer iframres per JavaScript eine Funktion zuweisen. Also was muss ich dann schreiben?

Danke Gruß Andreas

  1. Moin,

    ich würde gerne dem Body tag einer iframres per JavaScript eine Funktion zuweisen. Also was muss ich dann schreiben?

    Es gibt hier erstmal 2 Sachen zu beachten:
      - mit an Sicherheit grenzender Wahrscheinlichkeit heißt dein Themengebiet
        Javascript und nicht Java (das ist ein Unterschied)
      - es gibt einen Unterschied zwischen Tag und Element

    Das Body-Element hat das Attribut onload, welches wiederum eine Javascript-Funktion aufrufen kann. Aussehen könnte das dann beispielsweise so:

    JS:

    function foobar() {  
      alert("Foo, bar");  
    }
    

    HTML:

    <body onload="foobar()">  
    ...  
    </body>
    

    Auch im Nachhinein lässt sich ein mit JS ein Eventhandler registrieren. Die Frage ist und bleibt aber: Was möchtest du eigentlich tun?

    Grüße Marco

    --
    Ich spreche Spaghetticode - fließend.
    1. Hallo

      Erst mal Entschuldigung für meine Patzer und vielen Dank für die Hinweise.

      Es ist aber auch so das dass mit dem zuweisen einer Funktion so gemeint war, dass ich per javascript dem body Element Funktionen im onfocus zuweisen möchte. Es ist ja immer so unterschiedlich, da ich in der Vergangenheit ja bereits document.onclick und auch window.onunload schreiben musste.

      Also wie scvhreibe ich das jetzt bei onfocus?

      Danke Gruß Andreas

      1. Moin,

        Also wie scvhreibe ich das jetzt bei onfocus?

        <body onfocus="foobar()">...</body>  
        
        

        Grüße Marco

        --
        Ich spreche Spaghetticode - fließend.
        1. Hallo Marco

          aber ich will ja nicht in den tag schreiben, sondern Funktionen mit Hilfe von JavaScript zuweisen. Also wie zb:
          top.frames["DatenFrame"].document.onclick = function() {HideLinkDaten(); }
          Und jetzt?

          Danke Gruß Andreas

          1. Meine Herren,

            Hallo Marco

            aber ich will ja nicht in den tag schreiben, sondern Funktionen mit Hilfe von JavaScript zuweisen. Also wie zb:

            top.frames["DatenFrame"].document.onclick = function() {HideLinkDaten(); }

            document.body.onfocus = function(){};

            oder schöner:

            document.body.addEventListener('focus', function(){});

            Die Frage bleibt aber: was möchtest du eigentlich machen? Beschreibe dein Problem aus der Sicht eines Kunden, der kein technisches Verständnis hat.

          2. Moin,

            aber ich will ja nicht in den tag schreiben, sondern Funktionen mit Hilfe von JavaScript zuweisen. Also wie zb:
            top.frames["DatenFrame"].document.onclick = function() {HideLinkDaten(); }
            Und jetzt?

            Du hast es doch erfasst. Einfach onclick durch onfocus ersetzen:

            top.frames["DatenFrame"].document.onfocus = function() {HideLinkDaten(); }  
            
            

            Grüße Marco

            --
            Ich spreche Spaghetticode - fließend.
          3. Hallo,

            top.frames["DatenFrame"].document.onclick = function() {HideLinkDaten(); }

            Der focus-Event passiert meines Wissens am window-, nicht am document-Objekt.

            top.frames.DatenFrame liefert dir das window-Objekt des entsprechenden Frames.

            top.frames.DatenFrame.onfocus = function() {};

            … sollte also funktionieren.

            Hintergrundinfos:
            http://de.selfhtml.org/javascript/objekte/frames.htm#scripts
            http://aktuell.de.selfhtml.org/artikel/javascript/fensterzugriff/

            (Die Schreibweise top.frames.DatenFrame ist gleichwertig zu top.frames["DatenFrame"].)

            Mathias