Hallo.
das Problem ist bei beiden Lösungen, dass das Fenster z.B. auch dann schliesst, wenn nur ein input-element vom Nutzer gefüllt wird.
Oops, stimmt. Naja, wenn das zweite Fenster vom Ersten geöffnet wird, hat es, zumal auch Daten ausgetauscht werden, doch sicherlich einen Namen, d.h. anstatt Fenster #2 zu schließen, wenn es den Focus verliert, könntest du es schließen, wenn das Erste den Focus bekommt.
Also entweder im ersten Fenster:
<script type="text/javascript">
<!--
ZweitesFenster = window.open("","");
window.onfocus = ZweitesFenster.close;
//-->
</script>
Oder im Zweiten:
<script type="text/javascript">
<!--
opener.onfocus = window.close;
//-->
</script>
Das sollte funktionieren, wenn das zweite Fenster durch window.open geöffnet wurde.
Gruß
Norbert