Enrico: Ebenenwechsel klappt nicht (aber auch keine Fehlermeldung)

Hallo liebes Forum,

ich habe folgende (reduzierte) Struktur:

  
     <table class="Menue" id="0" cellpadding="0" cellspacing="0">  
        <tr>  
           <td><font class="aktiv">Wir über uns</font></td>  
           <td><a href="javascript:Menue_anzeigen (1);">Rüstzeug</a></td>  
           <td><a href="javascript:Menue_anzeigen (2);">Waffen</a></td>  
           <td><a href="javascript:Menue_anzeigen (3);">Gewandung</a></td>  
           <td><a href="javascript:Menue_anzeigen (4);">Lederzeug</a></td>  
           <td><a href="javascript:Menue_anzeigen (5);">Sonstiges</a></td>  
           <td><a href="javascript:Menue_anzeigen (6);">Informationen</a></td>  
        </tr>  
     </table>  
  
     <table class="Menue" id="1" cellpadding="0" cellspacing="0">  
        <tr>  
           <td><a href="javascript:Menue_anzeigen (0);">Zurück</a></td>  
           <td><font class="aktiv">Rüstzeug</font></td>  
           <td><a href="">Für den Kopf</a></td>  
           <td><a href="">Für den Körper</a></td>  
           <td><a href="">Für den Rest</a></td>  
           <td><a href="">Schilde</a></td>  
        </tr>  
     </table>  
  
     <table class="Menue" id="2" cellpadding="0" cellspacing="0">  
        <tr>  
           <td><a href="javascript:Menue_anzeigen (0);">Zurück</a></td>  
           <td><font class="aktiv">Waffen</font></td>  
           <td><a href="">Speere</a></td>  
           <td><a href="">Äxte/Hämmer</a></td>  
           <td><a href="">Schwerter</a></td>  
           <td class="Abstand"></td>  
        </tr>  
     </table>  
  
     <table class="Menue" id="3" cellpadding="0" cellspacing="0">  
        ...  
     </table>  
  
     ...  

Jede Tabelle beinhaltet ein Menü, wobei die Tabelle mit der id 0 das Einstiegsmenü darstellt.

Im <head>-Bereich habe ich ein Javascript zum Wechseln der Menüs definiert:

  
     function Menue_anzeigen (Nr)  
     {  
        for (var i = 0; i < 7; i++)  
        {  
           if (i != Nr)  
           {  
              document.getElementById (Nr).style.visibility = 'hidden';  
           }  
           else  
           {  
              document.getElementById (Nr).style.visibility = 'visible';  
           }  
        }  
     }  

Vor dem schliessenden <body>-Tag werden alle Tabellen initialisiert und das Ausgangsmenü angezeigt:

  
     for (var i = 1; i < 7; i++)  
     {  
        document.getElementById (i).style.visibility = 'hidden';  
     }  
  
     document.getElementById (0).style.visibility = 'visible';  

Leider wird beim Anklicken eines Menüpunktes im Ausgangsmenü kein Wechsel vollzogen.
Die Fehlerconsole von Firefox bringt mir keinen Fehler.

Was habe ich denn falsch gemacht?

Vielen Dank für eure Hilfe und viele Grüße
Enrico

  1. Om nah hoo pez nyeetz, Enrico!

    Was habe ich denn falsch gemacht?

    in HTML != 5 dürfen IDs nicht mit einer Zahl beginnen.

    Verwende eine Liste für ein Menü und vezichte auf Javascript.

    Matthias

    --
    1/z ist kein Blatt Papier.

    1. Lieber Matthias Apsel,

      Was habe ich denn falsch gemacht?

      in HTML != 5 dürfen IDs nicht mit einer Zahl beginnen.

      dieser Fehler war tatsächlich einer.

      Verwende eine Liste für ein Menü

      Dieser "Fehler" ist keiner, sondern Semantik-Müll. Das kann man so machen, auch wenn es nicht gut ist.

      und vezichte auf Javascript.

      Das ist überhaupt kein Fehler, da es sich hier ganz offensichtlich um ein Spiel handelt, bei dem wir (mangels Info des OPs) nicht wissen, ob es vielleicht an anderer Stelle zwingend auf JavaScript angewiesen ist.

      Du hast aber in einem Punkt recht: Um die Sichtbarkeit von Menüs zu schalten, kann man alleine mit CSS-Mitteln arbeiten - falls man auf IEs<9 verzichten kann.

      Liebe Grüße,

      Felix Riesterer.

      --
      ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)