JavaScript fenêtre.ouvert uniquement si la fenêtre n'existe pas déjà

J'ai une application qui ouvre une nouvelle fenêtre en cliquant sur un lien. Cela engendre une page qui contient une applet Java. Le problème que j'ai c'est que en cliquant sur le même lien recharge la page, ce qui rétablit l'application Java. Est-il possible de ce piège? Deux solutions acceptables sont:

  1. Permettre de multiples fenêtres à ouvrir à partir du gestionnaire de clic
  2. Ignorer les demandes ultérieures si la fenêtre est déjà ouverte

Excuses pour le Javascript débutant - ce n'est pas vraiment ma principale chose.

Le code associé à la gestionnaire est

function launchApplication(l_url, l_windowName)
{
  var l_width = screen.availWidth;
  var l_height = screen.availHeight;

  var l_params = 'status=1' +
                 ',resizable=1' +
                 ',scrollbars=1' +
                 ',width=' + l_width +
                 ',height=' + l_height +
                 ',left=0' +
                 ',top=0';

  winRef = window.open(l_url, l_windowName, l_params);
  winRef.moveTo(0,0);
  winRef.resizeTo(l_width, l_height);
}

EDIT:

Merci pour les réponses - j'ai modifié les suggestions légèrement pour que je puisse avoir plus d'une URL ouvertes par le biais de la fonction.

EDIT2:
Il existe une autre version de ce code à Vérifier une URL à ouvrir dans une autre fenêtre

var g_urlarray = [];

Array.prototype.has = function(value) {
    var i;
    for (var i in this) {
        if (i === value) {
            return true;
        }
    }
    return false;
};


function launchApplication(l_url, l_windowName)
{
  var l_width = screen.availWidth;
  var l_height = screen.availHeight;
  var winRef;

  var l_params = 'status=1' +
                 ',resizable=1' +
                 ',scrollbars=1' +
                 ',width=' + l_width +
                 ',height=' + l_height +
                 ',left=0' +
         ',top=0';
  if (g_urlarray.has(l_url)) {
    winRef = g_urlarray[l_url];
  }
  alert(winRef);
  if (winRef == null || winRef.closed) {
      winRef = window.open(l_url, l_windowName, l_params);
      winRef.moveTo(0,0);
      winRef.resizeTo(l_width, l_height);
      g_urlarray[l_url] = winRef;
  }
}