Hi Matthias,
na, dann müssen wir da wohl ans Eingemachte. Erstmal solltest Du versuchen, Syntaxungereimtheiten glattzubügeln, also wirklich jede Anweisung mit ; abschließen, auch am Zeilenende. Dann die Event-Handler auch in Groß-/Kleinschreibung (onClick, onMouseover usw.) und die Funktionsaufrüfe in den Event-Handlern auch mit ; abschließen. Das löst aber das Problem wahrscheinlich nicht.
Ich konnte den Fehler nur bei Aufruf von aktiv() feststellen; der wesentliche Unterschied zu den anderen Funktionen ist, dass dort auch reset() aufgerufen wird. Das lässt mich an ein Reihenfolgenproblem denken. Probier doch mal spaßeshalber ob sich was ändert, wenn Du zwischen reset() und switch ein sinnloses alert reinbaust.
Dann fällt mir auf, dass nach Aufruf von aktiv() der Sanduhr-Cursor nicht mehr weggeht, so als würde die JS-Engine dauerhaft arbeiten und die Funktion nie beendet werden. Da kommt mir zuerst nur wieder das Reihenfolgenproblem in denn Sinn, und dann fällt mir noch ein, dass es vor langer langer einige Threads zu solchen Problemen gab. Wenn es das Reihenfolgenproblem auch nicht ist, würde ich ne Archivsuche nach diesen Threads empfehlen.
Grüße + viel Glück!
Utz