Javascript aus/einklappen

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Javascript aus/einklappen

    Hallo ,

    Ich habe gerade ein Plugin für das phpBB installiert wo eine java Funktion eingebaut ist . Es funktioniert zwar aber nicht so wie ich möchte .

    Und zwar ist das Problem dass wenn ich das Script aufrufe das ganze schon ausgeklappt ist . Ich möchte aber haben dass es erst per Klick sich aufklappt und erst wieder per klick zu geht . Aber standart soll ZU sein was ja jetzt nicht der fall ist .

    Sry ich hoff ihr versteht mich hab keine ahnung davon .

    Hier der Code so wies jetzt aussieht .

    Source Code

    1. function view(mod,en,dis){
    2. document.getElementById('gb').style.display = mod;
    3. document.getElementById(en).style.display = 'block';
    4. document.getElementById(dis).style.display = 'none';
    5. }


    Und der andere Teil

    Source Code

    1. <div id="dis" class="gen"><a href="javascript:view('none','en','dis');">{L_DIS}</a></div>
    2. <div id="en" style="display:none;" class="gen"><a href="javascript:view('block','dis','en');">{L_EN}</a></div>


    Bitte um hilfe dass das ganze standart zu ist .
    Danke sehr
  • 1) Flasche Section. Java != Javascript :)

    2) Schau dir mal die Klasse von dem Div an. Ich denke mal, dass dort ein Eintrag alá "display: block;" steht. Anders kann ich mir das nicht vorstellen. Ich meine du hast das schon mit style vordefiniert hmm..
    Wie wärs wenn du es damit ersetzt <div id="en" class="gen" style="display:none;"> damit das style Atribut hinten steht.
    Könnte zwar ein kompletter Schwachsinn sein, aber probieren geht über studieren.
  • Hey,

    für einen der das kann ist das sicher nicht schwer - Hexen ist keine kunst, wenn man weis wie es geht ;)

    So wie es aussieht haben wir aber nicht den kompletten Code. Aber du hast den Code sicherlich irgendwo her und wir können ihn uns sicherlich irgendwo anschaun (z.B. auf der Seite wo du ihn her hast als Demo) - so können wir den JS Code anschaun und dir helfen.

    Ansonsten kann ich auch nur wie mein Vorgänger vermuten:

    Source Code

    1. <div id="dis" style="display:none;" class="gen"><a href="javascript:view('none','en','dis');">{L_DIS}</a></div>
    2. <div id="en" style="display:block;" class="gen"><a href="javascript:view('block','dis','en');">{L_EN}</a></div>


    Gruß,
    Dominic
    My lovely mister singing club...

    The post was edited 1 time, last by Dominic ().

  • mr.good wrote:

    Und zwar ist das Problem dass wenn ich das Script aufrufe das ganze schon ausgeklappt ist . Ich möchte aber haben dass es erst per Klick sich aufklappt und erst wieder per klick zu geht . Aber standart soll ZU sein was ja jetzt nicht der fall ist.

    Ich rate mal, daß du mit "das ganze" das Element mit der ID 'gb' meinst, oder? Schau dir doch mal das entsprechende Tag dort an. Im Speziellen dessen Style- und Class-Attribute. Hier mußt du dafür sorgen, daß dieses Element nicht dargestellt wird. Da du den Code dazu nicht gepostet hast, kann ich dir nicht sagen wie.

    Nun zu den notwendigen Änderungen am Code den du gepostet hast. Statt

    Source Code

    1. <div id="dis" class="gen"><a href="javascript:view('none','en','dis');">{L_DIS}</a></div>
    2. <div id="en" style="display:none;" class="gen"><a href="javascript:view('block','dis','en');">{L_EN}</a></div>


    schreibst du:

    Source Code

    1. <div id="dis" style="display:none;" class="gen"><a href="javascript:view('none','en','dis');">{L_DIS}</a></div>
    2. <div id="en" class="gen"><a href="javascript:view('block','dis','en');">{L_EN}</a></div>


    Gnah wrote:

    2) Schau dir mal die Klasse von dem Div an. Ich denke mal, dass dort ein Eintrag alá "display: block;" steht. Anders kann ich mir das nicht vorstellen. Ich meine du hast das schon mit style vordefiniert hmm..
    Wie wärs wenn du es damit ersetzt <div id="en" class="gen" style="display:none;"> damit das style Atribut hinten steht.

    • CSS-Einstellungen in einem Style-Attribut haben immer Vorrang vor denen in der CSS-Klasse.
    • Die Reihenfolge der Attribute in einem HTML-Tag ist irrelevant.
  • 1 CSS-Einstellungen in einem Style-Attribut haben immer Vorrang vor denen in der CSS-Klasse.
    2 Die Reihenfolge der Attribute in einem HTML-Tag ist irrelevant.


    1 Ja das weiss ich, nur hat er kein Styleatributt in seinem Beitrag.
    2 Ja wie gesagt, ich wusste nicht, was sonst der Fehler sein konnte :P
  • Also ich hab das hier bei mir verbaut
    Ich weiß ned, ob es genau das ist, was du brauchst, aber vielleicht hilft es dir weiter


    Source Code

    1. /*
    2. CSS-Eigenschaften für DIV
    3. display:none;
    4. id="uniquename;
    5. LINKS:
    6. Show: <a onmouseover="ShowContent('uniquename'); return true;"
    7. href="javascript:ShowContent('uniquename')">[show]</a>
    8. Hide: <a onmouseover="HideContent('uniquename'); return true;"
    9. href="javascript:HideContent('uniquename')">[hide]</a>
    10. Both: <a onmouseover="ReverseDisplay('uniquename'); return true;"
    11. href="javascript:ReverseDisplay('uniquename')">[both]</a>
    12. */
    13. /* Funktion für das Verstecken des div-Layers */
    14. function HideContent(d) {
    15. if(d.length < 1) { return; }
    16. document.getElementById(d).style.display = "none";
    17. }
    18. /* Funktion für das Anzeigen des div-Layers */
    19. function ShowContent(d) {
    20. if(d.length < 1) { return; }
    21. document.getElementById(d).style.display = "block";
    22. }
    23. /* Funktion für das Anzeigen/Verstecken des div-Layers */
    24. function ReverseDisplay(d) {
    25. if(d.length < 1) { return; }
    26. if(document.getElementById(d).style.display == "none") {
    27. document.getElementById(d).style.display = "block"; }
    28. else { document.getElementById(d).style.display = "none"; }
    29. }
    Display All