Andreas: Objekte ein/ausblenden

Hallo zusammen

ich würde gerne Untermenues erstellen die beim drüberfahren eines Eintrags ein- bzw. ausblenden. Ausgerichtet habe ich die Tabellen mit divs.

Und es handelt sich ja um mehrere Untermenüs, so daß ich jetzt schon daran scheitere id oder Name den Untermenüs zu vergeben. Und jetzt rufe ich Funktionen auf die style.visibility visible bzw. hidden verwenden sollen. Doch erhalte ich stets Fehlermeldungen.

Danke gruß Andreas

  1. Wie wärs mit ein bisschen Code?
    Oder zumidestens die fehlermeldung?

    Ist dein Syntax richtig?

    document.getElementById("id_bezeichnung").style.visibility = "visible"; bzw. "hidden" ???

    1. Hallo

      Javascript:
          document.getElementsByName('Menues')[i].style.visibility = "visible"

      und der codein HTML:
      <div style="position:absolute; top:83; left:271; visibility:hidden; z-index:1" id="Menues">
      <table border="0" style="border:1px; border-color:#000; border-style:solid; background-color:#eeeeee" frame="box">
      <tr><td style="padding:10">Aktuelles</td></tr>

      usw...

      Und die Fehlermeldung: Das Objekt unterstützt diese Eigenschaft oder Methode nicht.

      Zbd Tabellen nutze ich für einen Außenrahmen.

      Gruß Andreas

      1. Hallo Andreas,

        document.getElementsByName('Menues')[i].style.visibility = "visible"

        ^

        <div style="position:absolute; top:83; left:271; visibility:hidden; z-index:1" id="Menues">

        ^

        Gruß, Jürgen

        1. document.getElementsByName('Menues')[i].style.visibility = "visible"
                                         ^

          ^ bei Id ohne "s"

          1. Danke für die Hilfe. Doch es will einfach nicht:

            function MenueDown(i) {
                document.getElementByID('Menues')[i].style.visibility = "visible"
            }

            <div style="position:absolute; top:83; left:190; visibility:hidden; z-index:1" id="Menues">

            1. function MenueDown(i) {
                  document.getElementByID('Menues')[i].style.visibility = "visible"
              }
              <div style="position:absolute; top:83; left:190; visibility:hidden; z-index:1" id="Menues">

              Id nicht ID!
              Ein ";" fehlt am Befehlsende!

              1. Hallo,

                document.getElementByID('Menues')[i].style.visibility = "visible"
                }

                Id nicht ID!

                und das [i] darf auch nicht sein. IDs müssen eInDeutig sein. Mehrere Menüs können über durchnummerierte IDs (Menue1, Menue2, ...) angesprochen werden. Wenn das nicht geht, käme auch getElementsByTagName in Frage.

                Ein ";" fehlt am Befehlsende!

                nicht unbedingt.

                Gruß, Jürgen

                1. Darf ich jemandem meine Homepage schicken? Bitte

                  Denn wo unterscheidet sich der Code von meinem?

                  Danke

                  1. Hallo Andreas,

                    Darf ich jemandem meine Homepage schicken? Bitte

                    nein. Aber du kannst sie hier posten oder verlinken.

                    Denn wo unterscheidet sich der Code von meinem?

                    es muss document.getElementById("...").style... heißen.

                    Gruß, Jürgen

                  2. Hallo

                    und jetzt mach ich´s so daß ich jedem Menue ein eigenen Namen vergebe.

                    Und so heist der Aufruf jetzt
                    <td Name="Bereiche" align="center" OnClick="Daten.location='aktuellHobby.html'" onmouseover="javascript:MenueDown(2)" onmouseout="javascript:MenueUp(2)">Hobby</td>

                    und die einblendende Funktion
                        document.getElementById("Menues" + MenueID).style.visibility="visible";

                    Und damit läufts jetzt

                    Gruß Andreas

                  3. Ich hab jetzt jedem Objekt einen vollständigen Namen und also in keiner Aufzählung vergeben. Und damit funktionierts:

                    document.getElementById("Menues" + i).style.visibility="hidden";

                    Gruß Andreas

                    1. Hallo Andreas,

                      Ich hab jetzt jedem Objekt einen vollständigen Namen und also in keiner Aufzählung vergeben. Und damit funktionierts:

                      document.getElementById("Menues" + i).style.visibility="hidden";

                      ich hoffe, du meinst nicht Name, sondern Id.

                      Gruß, Jürgen

              2. Reaktionen wie gehabt:

                Und die Fehlermeldung: Zeile: 12 Zeichen 5 Das Objekt unterstützt diese Eigenschaft oder Methode nicht

                function MenueDown(i) {
                    document.getElementByid('Menues')[i].style.visibility = "visible";
                }

                function MenueUp(i)
                {
                    document.getElementByid('Menues')[i].style.visibility = "hidden";
                }

                <div style="position:absolute; top:83; left:190; visibility:hidden; z-index:1" id="Menues">
                <table border="0" style="border:1px; border-color:#000; border-style:solid; background-color:#eeeeee" frame="box">
                <tr><td style="padding:10">Aktuelles</td></tr>
                <tr><td style="padding:10">interessante Links</td></tr>
                <tr><td style="padding:10">Onlinegames</td></tr>
                </table>
                </div>

                Danke Gruß Andreas

                1. Hallo Andreas,

                  Reaktionen wie gehabt:

                  vieleicht solltest du doch einmal hier http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id reinschauen.

                  Gruß, Jürgen

                  PS Eine Stunde rumprobieren erspart einem eine Minute Handbuch lesen

                2. function MenueDown(i) {
                      document.getElementByid('Menues')[i].style.visibility = "visible";
                  }

                  function MenueUp(i)
                  {
                      document.getElementByid('Menues')[i].style.visibility = "hidden";
                  }

                  Du willst micht ärgern was?
                  Habe dir 3 mal die korrekte schreibweise der getElementById-Anweisung geliefert, und jedes mal schreibst du es anders: Id, nicht id, und nicht ID!!!

  2. ich würde gerne Untermenues erstellen die beim drüberfahren eines Eintrags ein- bzw. ausblenden. Ausgerichtet habe ich die Tabellen mit divs.

    Und wieso nutzt du keine Listen, die dafür gedacht sind?

    Und es handelt sich ja um mehrere Untermenüs, so daß ich jetzt schon daran scheitere id oder Name den Untermenüs zu vergeben. Und jetzt rufe ich Funktionen auf die style.visibility visible bzw. hidden verwenden sollen. Doch erhalte ich stets Fehlermeldungen.

    Schön für dich. Und wir sollen jetzt erraten, wie dein Code aussieht und welche Fehlermeldung kommt?
    Achja, ich vergass, wir sind hier ja in "SelfHellseher"