Peter G.: Prüfen, ob Seite geladen wird

Hallo,

ich habe einen Javascript Code erstellt, der erst ausgeführt werden soll, nachdem eine Seite vollständig geladen wurde. Der Javascript Code wird nur im IE6 eingeladen, aus dem Grund kann ich nicht <body onload="meineFunktion();"> verwenden, da die Funktion in allen anderen Browsern nicht existiert.
Gibt es eine andere Möglichkeit eine Funktion auszuführen, nachdem die Seite geladen wurde?

  1. Hi,

    du könntest Conditional Comments nutzen, die versteht nur der IE.

    Gruß
    Ole

    --
    Das Wort Vegetarier kommt aus dem Indianischen und bedeutet: Zu dumm zum Jagen.
  2. Der Javascript Code wird nur im IE6 eingeladen, aus dem Grund kann ich nicht <body onload="meineFunktion();"> verwenden, da die Funktion in allen anderen Browsern nicht existiert.

    Dann frage doch einfach ab, ob sie definiert wurde:

    window.onload = function () {  
       if (window.meineFunktion) {  
          meineFunktion();  
       }  
    };
    

    Oder schreibe

    window.onload = meineFunktion;

    in den JavaScript-Code, der nur im IE geladen wird.

    Mathias

    1. window.onload = meineFunktion();

      in den JavaScript-Code, der nur im IE geladen wird.

      Daran habe ich auch schon gedacht. Es scheint als ob der Code ausgeführt wird, bevor die Seite vollständig geladen wurde. Daher ist nicht das gewünschte Ergebnis sichtbar.

      Nachfolgender Code funktioniert gar nicht:
      document.body.onload = meineFunktion();

      1. Hallo,

        »» window.onload = meineFunktion();

        das ist nicht die Anweisung, die Mathias dir gezeigt hat. Du hast den entscheidenden Fehler selbst "eingebaut".

        Daran habe ich auch schon gedacht. Es scheint als ob der Code ausgeführt wird, bevor die Seite vollständig geladen wurde.

        Natürlich, so wie du ihn formuliert hast, muss das so sein:
        Führe "meineFunktion" jetzt sofort aus und weise dem Eventhandler window.onload das Funktionsergebnis zu.
        Das willst du aber nicht. Du willst, dass dem Eventhandler eine Referenz auf die Funktion zugewiesen wird. Das ist etwas anderes.

        Nachfolgender Code funktioniert gar nicht:
        document.body.onload = meineFunktion();

        Der ist ja auch frei erfunden.

        So long,
         Martin

        --
        Zwischen Leber und Milz
        passt immer noch'n Pils.
      2. window.onload = meineFunktion();
        document.body.onload = meineFunktion();

        Und du siehst keine Unterschiede zwischen diesen beiden Befehlen?

        Der erste ist richtig, der zweite (wie du weißt) falsch.

        Siehe auch http://molily.de/js/einbindung.html#fehler-code-als-string

        Mathias

        1. Hallo Mathias,

          »» »» window.onload = meineFunktion();
          »» document.body.onload = meineFunktion();
          Und du siehst keine Unterschiede zwischen diesen beiden Befehlen?
          Der erste ist richtig, der zweite (wie du weißt) falsch.

          nun bist du Peter G. auch noch auf den Leim gegangen!

          »» »» window.onload = meineFunktion;
          »» window.onload = meineFunktion();

          Aber du siehst den Unterschied, oder? ;-)

          So long,
           Martin

          --
          Die meisten Menschen werden früher oder später durch Computer ersetzt.
          Für manche würde aber auch schon ein einfacher Taschenrechner genügen.
          1. nun bist du Peter G. auch noch auf den Leim gegangen!

            Stimmt. Er hat mein Zitat gefälscht. Zumindest mein Posting enthielt die richtige Variante.

            Mathias

            1. Hallo,

              »» nun bist du Peter G. auch noch auf den Leim gegangen!
              Stimmt. Er hat mein Zitat gefälscht.

              das habe ich auch schon versucht ihm zu sagen.

              Zumindest mein Posting enthielt die richtige Variante.

              Ja, hätte mich bei dir auch verunsichert, wenn's da schon falsch wäre.

              Ciao,
               Martin

              --
              Wer morgens zerknittert aufsteht, hat den ganzen Tag Gelegenheit, sich zu entfalten.