ello: prüfen ob anderes frame geladen ist .. mit schleife

ich möchte aus einer html datei(in einem frame) auf ein script in einem anderen frame zugreifen. soweit funktioniert das auch, nur ab und zu kommt es vpr, das das frame noch nicht geladen ist und somit im html-dokument ein fehler auftaucht.

wie kann ich bewerkstelligen, das der funktionsaufruf erst dann passiert wenn das andere dokument geladen ist??

grüße, ello

  1. wie kann ich bewerkstelligen, das der funktionsaufruf erst dann passiert wenn das andere dokument geladen ist??

    Möglichkeit eins: Du machst auf das Frame, was für das andere geladen sein muss ein onload, also z.B. so:

    <body onload = "parent.frames[framenummer_des_frames_mit_der_funktion].deine_funktion()">

    Möglichkeit 2 (unsauberer):
    Du setzt beim laden des Framesets eine bestimmte JS-Variable auf false und wartest dann so lange, bist diese von deinem geladenen Frame auf true gesetzt wird:

    Frame welches geladen sein muss:

    <script type="text/javascript">
    <!--
       function ready() {
          parent.loaded = true;
       }

    //-->
    </script>
    <body onload = "ready()">

    Frame mit der Funktion:

    ...
    <script type = "text/javascript">
    <!--
       function funktion () {
          if (!parent.loaded) {return(funktion();}
       }
    //-->
    </script>

    Ist aber unsauber, weil du damit einen Haufen unnötiger Rechnezeit verbrätst. Möglichkeit 1 wäre also besser.

    1. hmm, ich glaub ich hab das nicht so hunderprozentig beschrieben:

      ich bräuchte prinzipiell soetwas:

      while(frame[hier ist das skript] == nicht geladen) {
      warte;
      }

      skriptaufruf();

      ...

      grüße, ello