Spike: Probleme mit Variabelen übergabe bei Funktionsstart

Habe hier 2 Funktionen 1. memberinfo und 2. vor. nun über den href Test wird die funktion memberinfo mit dem wert 1 übergeben und in Variable i gespeichert. Dadurch wird  die Variable name auf den wert Spike gesetzt. Bishier hin klappt es auch ganz gut. nun soll aber durch das klicken auf vor auf dem neu geöffnet Fenster der Wert der Variablen i um 1(ist dann 2) erhöht werden so das er durch die Switchabfrage der Variablen name den Wert Crusty zuweist! Wenn ich in der funktion vor anstatt memberinfo(i) memberinfo(2) eingebe kommt auch der Name Crusty! aber bei i steht nur undfined als name!
Wie bekomme ich das hin das er denn Inhalten der Variablen i übergibt und nicht den wert "i"?
Hier die ganze HMTl Testseite:

<html>
<head>
<title>zurück</title>
<script language="JavaScript">
<!--
var i, name;

function vor(){
var i = i + 1;
memberinfo (i);
}

function memberinfo(i){
Showin=window.open("","Spike","width=520,height=450");
Showin.focus();
switch(i)
{
case 1:
var name = "Spike";
break;
case 2:
var name = "Crusty";
break;
case "2":
var name = "Crusty";
break;

case 3:
var name = "Pille";
break;
}
Showin.document.write("<Html><head><title>Katei</title><link rel=stylesheet type='text/css' href='../css/style.css'></head>");
Showin.document.write("<body bgcolor='#000000'><center><h1 align='center'><font face='Arial' color='ffffff'>" + name + "</font></h1>");
Showin.document.write("<p align='center'><font face='Arial'></font></p>");
Showin.document.write("<p><center><a href='javascript:opener.vor()'>vor</A><center)'><br><a href='javascript:window.close()'>Fenster schliessen</A></center></body></html>");
Showin.document.close("");
}
//-->
</script>

</head>

<body>
<a href='javascript:memberinfo(1)'>test</A>
</body>

</html>

Ps. Sorry eben falsche Rubrik gepostet

  1. var i, name;    <- Hier ist dein globales I definiert

    function vor(){
    var i = i + 1;  <- und hier definierst du ein lokales i

    <- das lokale i soll sich aus i+1 berechnen
                       <- also quasi aus sich selbst
                       <- es ist aber doch noch gar nicht initialisiert?

    memberinfo (i);
    }

    Wie wärs denn mit

    function vor(){
     i++;              <- und hier definierst du kein lokales i
     memberinfo (i);
    }

    Die <- Kommentare natürlich weglassen... ;-)