Martin Domdey: Reihenfolgeproblem

Hallo!

Ich habe da folgendes Reihenfolgeproblem, hier der Script:

<body onload="con()">

<script type="text/javascript">
    function con() {
      if (document.getElementById("cont").scrollHeight < document.getElementById("cont").offsetHeight)
          { var imgr = "imgsys"; }
        else { var imgr = "imgsys2"; }
        alert (imgr);
    }
        document.write("<table class='"+imgr+"'>");
        document.write("<tr>");
        document.write("<td>");
        document.write("<img src='../../images/system/acheta.jpg' width='137' height='94'>");
        document.write("</td>");
        document.write("</tr>");
        document.write("</table>");
  </script>

<div id="cont" class="cont">
    viel Inhalt
  </div>

</body>

Das Problem ist, dass zuerst die 7 Zeilen document.write ausgeführt werden, und dann erst function con(). Allerdings darf erst function con() ausgeführt werden, nachdem der body geladen wurde (onload="con()"), weil es sich auf den div-Tag mit "viel Inhalt" bezieht.

Also erst den body-Content, dann function con() und dann erst die document.write-Zeilen. Das würde also auch heißen, dass die document.write-Tabelle unter dem body-Content erscheinen müsste.

Weiß da jemand Rat?

Danke schon mal und Grüße, Martin...

  1. hi,

    Allerdings darf erst function con() ausgeführt werden, nachdem der body geladen wurde (onload="con()"), weil es sich auf den div-Tag mit "viel Inhalt" bezieht.

    Also erst den body-Content, dann function con() und dann erst die document.write-Zeilen. Das würde also auch heißen, dass die document.write-Tabelle unter dem body-Content erscheinen müsste.

    Nee, das würde bedeuten, dass document.write das bisherige Dokument ersetzt.

    Mach's entweder gleich "vernünftig" über DOM-Methoden (createElement, appendChild & Co.) - oder über Zuweisung des zusammengesetzten Codes an die innerHTML-Eigenschaft eines Elements.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. Hallo,

    wenn ich es richtig sehe, möchtest du das Bild in Abhängigkeit vom cont-Div ausrichten.

    Dann kannst du auch die ganze write(table)-Geschichte weglassen und das Bild, d.h. <img id="bildid" src= ...>, direkt hinter dem cont-div eintragen.
    und dann in der onload-function die Position des Bildes "korrigieren"

    with(document.getElementById("bildid").style) {
      left= ...
      top= ...
      position=...
    // usw
    }

    Gruß plan_B