style="display:none;" Untermenu verstecken

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • style="display:none;" Untermenu verstecken

    Hi, da ich mich hauptsächlich nur mit php und HTML auskenne, und ich mir Javascript nur stückweise aus anderen Codebeispielen zusammensetzen kann, habe ich folgendes Problem.

    Ich habe ein Forum programmiert, das die Subforen des jeweiligen Hauptforum versteckt, bis ich auf ein "plus" klicke und mir dies dann durch Javascript angezeigt wird.

    Alles soweit funktioniert. Nur soll es sich nicht wieder zuklappen, was es leider macht, wenn die Seite sich aktualisiert.

    Also müsste ich irgendwo eine Variable setzen, bei der ich dann nachschauen kann, ob das Untermenu jetzt geöffnet oder geschlossen ist.

    Vielleicht kann mir einer einen Tipp geben.

    Die Funktion:

    PHP-Code:
        <script language="JavaScript" type="text/javascript">
    <!--
    function 
    ShowContent (id)
    {
        if (
    document.getElementById("Content" id).style.display == 'none')
        {
            
    document.getElementById("ContentImg" id).src "./../images/minus.gif";
            
    document.getElementById("Content" id).style.display "";
        }
        else
        {
            
    document.getElementById("ContentImg" id).src "./../images/plus.gif";
            
    document.getElementById("Content" id).style.display "none";
        }
    }
    //-->
        
    </script
    Der Befehl zum öffnen des Menus:

    PHP-Code:
    <a href="javascript:ShowContent('General$counter')">
    <
    img src="./../images/plus.gif" align="middle" border="0" alt="" id="ContentImgGeneral$counter"></a
    Nicht wundern, die Variable $counter wird durch das php script gefüllt.


    Das menu wenn es geöffnet wird:

    PHP-Code:
    <tbody id="ContentGeneral$counterstyle="display:none;">
    $subforen</tbody

  • #2
    dann musst du die Aktion beim Klick mit PHP ausführen und nicht mit JavaScript...
    oder du setzt per JavaScript ein Cookie, wobei ich die PHP-Variante bevorzugen
    würde (weil ich eben auch nicht so~ fit bin in JavaScript )

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Keiner eine Idee, dies auf JS Basis zu lösen?

      Kommentar


      • #4
        Original geschrieben von toxiclein
        Keiner eine Idee, dies auf JS Basis zu lösen?
        *seufz*
        oder du setzt per JavaScript ein Cookie
        du nix lesen?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Andere Lösungsvorschläge?

          Per Funktion?

          Ich weiss j anicht in wieweit man sowas mit Javascript (ohne Cookies ) realisieren kann.

          Kommentar


          • #6
            Original geschrieben von toxiclein
            Andere Lösungsvorschläge?
            warum?
            Per Funktion?
            wie denn sonst?
            natürlich nutzt man zum strukturierten programmieren funktionen.
            Ich weiss j anicht in wieweit man sowas mit Javascript (ohne Cookies ) realisieren kann.
            ohne cookies wird's vermutlich richtig hässlich ... da fiele mir auf anhieb nur noch das einbinden der ganzen seite in einem frameset ein, in dem man dann javascript-variablen über das neu laden der unterseite hinaus ablegen kann ...
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Original geschrieben von wahsaga


              wie denn sonst?
              natürlich nutzt man zum strukturierten programmieren funktionen.
              Ist ja oben auch im ersten post vorhanden. Dachte nur, das man meine Funktion erweitern könnte. Deshalb die Frage. na mal schauen. werde es dann anscheinend doch über php lösen.

              Gibt es bei javascript auch Array? Dann könnte man doch den Status in ein Array reinschreiben, und diesen wieder ausgeben. Oder?
              Zuletzt geändert von toxiclein; 07.09.2005, 06:38.

              Kommentar


              • #8
                Original geschrieben von toxiclein
                Gibt es bei javascript auch Array? Dann könnte man doch den Status in ein Array reinschreiben, und diesen wieder ausgeben. Oder?
                es gibt Arrays, aber wie du das Array von Seite zu Seite schleppst, ohne Cookies, das will ich sehen...

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  In dem ich das per hidden input an das php über $_POST sende, dort es wieder auseinander nehme und den jeweiligen status setzte ?

                  Zumindest schwebt mir dies vor, ob man soetwas realisieren kann, werde ich heute merken, wenn ich mir ein wenig JS Kenntnisse angeeignet habe. Weshalb ich eigentlich hierher gekommen bin, da ich dachte, das es ein paar JSler gibt, die dies mir beantworten hätten können.

                  Könnt ihr mir wenigstens sagen, wie ich von

                  PHP-Code:
                  <tbody id="ContentGeneral$counterstyle="display:none">
                  $subforen
                  </tbody
                  die id und den style in ein array bekomme?

                  Danke
                  Zuletzt geändert von toxiclein; 07.09.2005, 08:37.

                  Kommentar


                  • #10
                    Original geschrieben von toxiclein
                    In dem ich das per hidden input an das php über $_POST sende, dort es wieder auseinander nehme und den jeweiligen status setzte ?
                    und warum willst du dann überhaupt noch mit javascript arbeiten, wenn du doch nach jedem klick im menü serverseitig den status updaten willst ...?

                    (ja, ginge per AJAX - aber das ist für einen einsteiger wohl doch too much.)

                    Könnt ihr mir wenigstens sagen, wie ich von
                    <tbody id="ContentGeneral$counter" style="display:none">
                    $subforen
                    </tbody>
                    die id und den style in ein array bekomme?
                    getElement(s)By...-Methoden des DOM verwenden, um an die elemente heranzukommen. (http://de.selfhtml.org/javascript/objekte/document.htm)
                    über's style-objekt gehen, um an den fest im element selber per style-attribut vergebenen wert ranzukommen. (http://de.selfhtml.org/javascript/objekte/style.htm)
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar

                    Lädt...
                    X