Cornhulio: Bei nochmaligem Onclick etwas anderes ausführen?!

Hi,

wie kann ich meinem script sagen, dass es bei nochmaligem onclick etwas anderes ausführen soll?
Ich habe ein Menü das aufklappt bei <img src="bild.png" onclick="menue()">
aber bei nochmaligem onclick auf das bild soll es wieder einklappen?!

Gruß,
ich

  1. Hello,

    wie kann ich meinem script sagen, dass es bei nochmaligem onclick etwas anderes ausführen soll?
    Ich habe ein Menü das aufklappt bei <img src="bild.png" onclick="menue()">
    aber bei nochmaligem onclick auf das bild soll es wieder einklappen?!

    Wie sagst Du dem Script denn, was es bei OnClick tun muss?
    Du weist ihm einen String zu mit dem Namen und den Attributen einer Funktion.
    Wenn nun diese Funktion im Image-Objekt den String austauschen würde, was meinst Du, was dann passiert?

    Harzliche Grüße vom Berg
    http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau

    1. Hi,

      die funktion menue() beinhalten ein innerHTML='<tr><td id="bla"></td></tr>' also wenn ich drauf klick wird eine funktion ausgeführt die den HTML code von oben so ausführt (vor dem img steht natürlich noch <table><tr><td>irgendwelche einträge</td></tr></table>) und wenn ich jetzt auf das img klick, dann führt er die funktion mit innerHTML aus, klappt so weit auch, aber wenn ich jetzt nochmal draufklick, dann soll er eben diese funktion bzw. das geschriebene wieder rausnehemen also so zu sagen ein outerHTML machen :)

      1. Hallo,

        dann muss das Script den momentanen Zustand mit einer if-Schleife abfragen und entsprechend darauf reagieren.

        Viele Grüße

        --
        (((C = C + 1 == C++) == true) == true)
        1. Hello out there!

          dann muss das Script den momentanen Zustand mit einer if-Schleife abfragen und entsprechend darauf reagieren.

          „Da soll nochmal jemand sagen, es gäbe keine if-Schleife …“ [MudGuard]

          See ya up the road,
          Gunnar

          --
          “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
          1. Hallo,

            „Da soll nochmal jemand sagen, es gäbe keine if-Schleife …“ [MudGuard]

            Gefällt dir Kontrollstruktur besser?
            Ein ziemlich kompliziertes Wort für so eine simple Geschichte, findest du nicht?

            Viele Grüße

            --
            (((C = C + 1 == C++) == true) == true)
            1. Hallo Richard.

              „Da soll nochmal jemand sagen, es gäbe keine if-Schleife …“ [MudGuard]

              Gefällt dir Kontrollstruktur besser?
              Ein ziemlich kompliziertes Wort für so eine simple Geschichte, findest du nicht?

              Deswegen sagt man meist auch einfach „Abfrage“.

              Einen schönen Montag noch.

              Gruß, Ashura

              --
              sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
              „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
              [HTML Design Constraints: Logical Markup]
              1. Hallo,

                Deswegen sagt man meist auch einfach „Abfrage“.

                Mit diesem Begriff wäre ich allerdings vorsichtig, da er ja eigentlich aus der Datenbankwelt stammt.

                Wie wärs mit 'Entscheidung'?

                Viele Grüße

                --
                (((C = C + 1 == C++) == true) == true)
                1. Hallo Richard.

                  Deswegen sagt man meist auch einfach „Abfrage“.

                  Mit diesem Begriff wäre ich allerdings vorsichtig, da er ja eigentlich aus der Datenbankwelt stammt.

                  Was jedoch nichts daran ändert, dass man mit if und Konsorten eine bestimmte Kondition abfragen kann.

                  Wie wärs mit 'Entscheidung'?

                  Wohl eher Fallunterscheidung. (Was wiederum eher switch / select entspricht, ich weiß.)

                  Einen schönen Montag noch.

                  Gruß, Ashura

                  --
                  sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
                  „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
                  [HTML Design Constraints: Logical Markup]
                  1. Hello,

                    Wie wärs mit 'Entscheidung'?

                    Angesichts Eures ungebrochenen Willens, Deutsch zu reden, wäre "Verzweigung" der richtige Ausdruck.

                    Harzliche Grüße vom Berg
                    http://www.annerschbarrich.de

                    Tom

                    --
                    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
                    Nur selber lernen macht schlau

                    1. Hallo Tom.

                      Wie wärs mit 'Entscheidung'?

                      Angesichts Eures ungebrochenen Willens, Deutsch zu reden, wäre "Verzweigung" der richtige Ausdruck.

                      Reichlich ungebräuchlich wenn du mich fragst. Bei diesem Begriff würde ich eher an Datenbankbeziehungen denken.

                      Einen schönen Montag noch.

                      Gruß, Ashura

                      --
                      sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
                      „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
                      [HTML Design Constraints: Logical Markup]
                      1. Hello,

                        Angesichts Eures ungebrochenen Willens, Deutsch zu reden, wäre "Verzweigung" der richtige Ausdruck.

                        Reichlich ungebräuchlich wenn du mich fragst. Bei diesem Begriff würde ich eher an Datenbankbeziehungen denken.

                        Das ist der offizielle Ausdruck für eine einfache Programm-Entscheidung.

                        http://de.wikipedia.org/wiki/Verzweigung_(Programmierung)

                        Und das Symbol im Programmablaufplan (PAP) dafür ist die querliegende Raute.

                        Harzliche Grüße vom Berg
                        http://www.annerschbarrich.de

                        Tom

                        --
                        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
                        Nur selber lernen macht schlau

                        1. Hello,

                          kleiner Nachtrag

                          Das ist der offizielle Ausdruck für eine einfache Programm-Entscheidung.

                          http://de.wikipedia.org/wiki/Verzweigung_(Programmierung)

                          Und das Symbol im Programmablaufplan (PAP) dafür ist die querliegende Raute.

                          http://de.wikipedia.org/wiki/Programmablaufplan

                          Harzliche Grüße vom Berg
                          http://www.annerschbarrich.de

                          Tom

                          --
                          Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
                          Nur selber lernen macht schlau

                        2. Hallo Tom.

                          Angesichts Eures ungebrochenen Willens, Deutsch zu reden, wäre "Verzweigung" der richtige Ausdruck.

                          Reichlich ungebräuchlich wenn du mich fragst. Bei diesem Begriff würde ich eher an Datenbankbeziehungen denken.

                          Das ist der offizielle Ausdruck für eine einfache Programm-Entscheidung.

                          Ist mir zwar gänzlich neu, aber man lernt gerne dazu. Danke.

                          Einen schönen Montag noch.

                          Gruß, Ashura

                          --
                          sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
                          „It is required that HTML be a common language between all platforms. This implies no device-specific markup, or anything which requires control over fonts or colors, for example. This is in keeping with the SGML ideal.“
                          [HTML Design Constraints: Logical Markup]
          2. Hello,

            „Da soll nochmal jemand sagen, es gäbe keine if-Schleife …“ [MudGuard]

            sind doch nur zwei Buchstaben Unterschied:

            - jnz
             - repnz

            Und ersteres kann die Schleife bilden, zweiteres zählt dann wenigstsns noch bei jedem Durchlauf das CX-Register (oder das entsprechend längere) runter *gg*

            Harzliche Grüße vom Berg
            http://www.annerschbarrich.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            Nur selber lernen macht schlau

            1. Hi,

              „Da soll nochmal jemand sagen, es gäbe keine if-Schleife …“ [MudGuard]

              sind doch nur zwei Buchstaben Unterschied:

              • jnz
              • repnz

              Wow. ;-)
              Naja, ganz richtig ist das aber auch nicht. Das erste Beispiel ist ja nur eine Art
               if (...)
                  goto xyz;
              und das zweite ist genaugenommen eine while-Schleife:
               while (--[E]CX)
                { ... }
              Schade, dass dabei in der geschweiften Klammer nur eine einzige Anweisung stehen kann, und auch nur wenige ausgewählte ...

              Schönen Tag noch,
               Martin

              --
              Die Zeit, die man zur Fertigstellung eines Projekts wirklich braucht, ist immer mindestens doppelt so lang wie geplant.
              Wurde dieser Umstand bei der Planung bereits berücksichtigt, gilt das Prinzip der Rekursion.
  2. Hello out there!

    wie kann ich meinem script sagen, dass es bei nochmaligem onclick etwas anderes ausführen soll?

    Indem du ein Flag (globale Variable) setzt:
    myFlag = false;

    In der Funktion wird dieses abgefragt und der Wert geändert:

    function myFunction() {  
    if (myFlag) {  
      // was in diesem Fall zu tun ist  
    }  
    else {  
      // was in jenem Fall zu tun ist  
    }  
    myFlag = !myFlag ;  
    }
    

    See ya up the road,
    Gunnar

    --
    “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
    1. Hi,

      kannst du mir bitte den link zur erläuterung der flags posten?

      Danke

      1. Hello out there!

        kannst du mir bitte den link zur erläuterung der flags posten?
        Danke

        Aber gerne: http://de.selfhtml.org/javascript/

        See ya up the road,
        Gunnar

        --
        “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
        1. Hi,

          Aber gerne: http://de.selfhtml.org/javascript/

          ja so weit bin ich auch alleine gekommen :) finde aber leider das genaue Kapitel darüber nicht, deswegen wäre ich dir sehr verbunden wenn dein link auf die genaue Information zeigen würde und mich nicht da stehen lässt wo ich onehin schon im dunklen tappe.

          Danke

          1. Hello out there!

            ja so weit bin ich auch alleine gekommen :) finde aber leider das genaue Kapitel darüber nicht,

            Es gibt auch keins.

            Ich wollte zum Ausdruck bringen, dass, wenn du den von mir geposteten JavaScript-Schnipsel nicht verstehst, du das ganze Kapitel von Anfang an lesen solltest.

            See ya up the road,
            Gunnar

            --
            “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)
  3. Hallo,

    danke für eure schnellen antworten :)

    Na wenns so leicht ist, dann mach ich das doch... :D

    Schönen Feiertag noch!