Malte Ahrens: insertBefore / insertAfter... DOM

Hallo,
ich generiere Klone ein Element und ändere dabei die Bildquelle. Allerdings wird das neue Bild vor dem alten eingefügt, es soll aber danach stehen... Ich vermute, dass es am insertBefore liegt, den Befehlt insertAfter gibt es aber nicht. Wie kann ich es hinbekommen, dass das neue Bild nach dem alten eingefügt wird?

Gruß,
Malte

Hier mein Quellecode:
<html>
 <head>

<script language="javascript">

<!--

var counter = 0;
bildcounter = 1

function moreFields()
{
 counter++;
 bildcounter--;
 neuesbild = new Image();
 neuesbild.src = "bild"+bildcounter+".gif";
 document.images[0].src = neuesbild.src
 var newFields = document.getElementById('test').cloneNode(true);
 newFields.id = '';
 newFields.style.display = 'block';
 var newField = newFields.childNodes;
 for (var i=0;i<newField.length;i++)
 {
  var theName = newField[i].name
  if (theName)
   newField[i].name = theName + counter;
 }
 var insertHere = document.getElementById('writeroot');
 insertHere.parentNode.insertBefore(newFields,insertHere);
}

// -->
</script>

</head>
 <body onLoad="if (parent.erin) parent.erin('domform'); moreFields()" onUnload="if (parent.eruit) parent.eruit('domform')">
 <table>
  <tr>
   <th>
    <span id="writeroot"></span>
   </th>
  </tr>
 </table>
  <div id="test" style="display: none">
   <input type="button" value="Aufklappen" onClick="moreFields()">
   <input type="button" value="Entfernen" onClick="this.parentNode.parentNode.removeChild(this.parentNode);"><br>
   <img src="bildx.gif">
   </div>

</body>
</html>

  1. Hi,

    den Befehlt insertAfter gibt es aber nicht.

    nein. Es gibt nextSibling und appendChild, welches Dir in Kombination mit insertBefore völlig ausreicht.

    Cheatah

    --
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes