var newform = document.createElement('<iframe>');
newform.setAttribute('allowtransparency','true');
newform.setAttribute('frameborder','0');
newform.setAttribute('src','imageupload.php');
newform.setAttribute('class','imageupload');left.appendChild(newform);
Wenn du keinen Testcase lieferst, baue ich mir halt einen selbst.
Im IE tritt in der appendChild-Zeile eine Exception "Ungültiges Argument" auf. Nach dem Owner-Document-Wechsel klappts.
Safari hat Probleme, die src für den iframe vor dem appendChild anzunehmen, der iframe blieb leer. Wenn ich das umstelle und das Element erst einhänge, klappts.
Außerdem würde ich das form.submit(), welches das aktuell angezeigte Dokument auswechselt und alle Objekte aus dem Speicher räumt, erst am Ende der Funktion ausführen. Das scheint nicht unbedingt nötig zu sein, aber erscheint mir robuster.
Mathias