Fensterputzer: PopUps automatisch schließen

Beitrag lesen

Was wäre das Leben traurig, gäb's das SelfForum nicht ?? :-)
Folgendes Problem: Ich habe eine Tabelle, in der Bildinformationen verlinkt sind, die in PopUps angezeigt werden können. Der JavaScript-Code dazu lautet:

var win;
function popup (bild,fenstername,breite,hoehe)
{ win=window.open (bild,fenstername,"width="+breite+", height="+hoehe+", top=20, left=20");
win.focus();
}

Aufgerufen werden die einzelnen Fenster über gewöhnliche Anker-Tags:

<a href="javascript:popup ('bild1.png','bild1','400','250')">Bild 1</a>
<a href="javascript:popup ('bild2.png','bild2','400','250')">Bild 2</a>
etc.

Da jedesmal ein anderer Fenstername vergeben wird, öfnet sich auch jedesmal ein neues Fenster. Nun würde ich gerne beim Schließen des Hauptfensters (opener) alle geöffneten PopUps - falls geöffnet - automatisch mitschließen.
<body onunload="closepopup()">
Das Problem ist, daß alle Fenster in der selben Variablen gespeichert werden und der folgende Code deshalb nicht verwendet werden kann:

function closepopup()
{
if (win)
{  if(!win.closed)
{  win.close();  } }
}

Gelöscht wird dabei immer nur das zuletzt aufgerufene Fenster, da nur noch dessen Information in der Variablen  gespeichert vorliegt. Nun könnte man natürlich jedes Fenster in einer anderen Variablen speichern und versuchen, das Ganze mit einer if-Abfrage ( oder mit Switch/Case ) in den Griff zu kriegen, was den Code aber gewaltig aufblähen würde.
Frage: Gibt es vielleicht eine elegantere Lösung des Problems ... und zwar eine Lösung, die mich nicht allzu sehr überfordert ?!
Gruß Fensterputzer
Die Charta hab ich nicht gelesen ... :-p