Also ich würde das so machen:
Warum du das mir antwortest weiß ich nicht, aber na gut
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Wenn schon einen DOCTYPE dann wenigstens einen, der den Browser nicht in den Quirksmode schickt.
var i=0;
function hide() {
fields = document.getElementsByTagName("input")
if (i < fields.length) {
fields[i].style.visibility='hidden';
i++;
window.setTimeout("hide()", 400);
}
}
Globale Variabeln, vor allem Schleifenzähler, sind immer eine schlechte Idee und ein schlechter Programmierstil, der dich irgendwann Stunden an Fehlersuche kosten wird. Zumal in deinem Beispiel das i problemlos als Parameter übergeben werden kann.
Also ich würd's so machen (wobei das was anderes ist als der OP wollte)
function hide(nr)
{
if(!nr) nr = 0;
var fields = document.getElementsByTagName("input")
if(nr < fields.length)
{
fields[nr++].style.visibility='hidden';
window.setTimeout(function() {hide(nr);}, 400);
}
}
Struppi.
Javascript ist toll (Perl auch!)