jimmy: CSS Buttons und Onclick

Hallo zusammen,

ich habe mehrere CSS-formatierte Buttons nebeneinander die bei mouseover die Farbe ändern. Jeder Button soll ein onclick (bzw. ein href) bekommen um eine javascript Funktion aufzurufen. Zusätzlich möchte ich, dass jeweils der zuletzt angeklickte Button die Farbe solange ändert bis ein anderer dieser Buttons angeklickt wird.

Kann mir jemand einen Tipp geben was ich ändern/hinzufügen muss damit der angeklickte Button die Farbe behält???
Bisher siehts so aus:

<ul id="Navigation" >  
 <li><a onclick ="ButtonClick(1)">Bsp1</a></li>  
 <li><a href="javascript:ButtonClick(4)">Bsp2</a></li>  
</ul>
ul#Navigation {  
    margin: 0; padding: 0.8em;  
    text-align: center;  
	width:auto;  
    background-color: #FFFFFF;  
  }  
  
ul#Navigation li {  
    list-style: none;  
    display: inline;  
    margin: 0.4em; padding: 0;  
  }  
  
ul#Navigation a, ul#Navigation span {  
    padding: 0.2em 1em;  
    text-decoration: none; font-weight: bold;  
    border: 1px solid black;  
    border-left-color: white; border-top-color: white;  
    color:#ACD697; background-color: #735539;  
  }  
  
ul#Navigation a:hover, ul#Navigation span {  
    border-color: white;  
    border-left-color: black; border-top-color: black;  
    color: #735539; background-color: #ACD697;  
  }  

Danke!

  1. @@jimmy:

    nuqneH

    ich habe mehrere CSS-formatierte Buttons

    Nein, du hast Links.

    Kann mir jemand einen Tipp geben was ich ändern/hinzufügen muss

    Eine Navigation, die ohne JavaScript benutzbar ist.

    damit der angeklickte Button die Farbe behält???

    Um deren Darstellung kümmerst du dich später.

    Beschreib doch mal bitte, was du eigentlich erreichen möchtest. Damit meine ich nicht die Darstellung, sondern deine Navigation.

    Qapla'

    --
    Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
    (Mark Twain)
    1. Ok,

      also ich habe Links (die aufgrund ihrer CSS Eigenschaften aussehen wie Buttons)

      diese Links rufen eine javascript Funktion auf, die mit Hilfe von Ajax einen Request auf eine Datenbank sendet und das Ergebnis dann in einem div weiter unten auf der Seite anzeigt.
      Jeder Button steht für einen unterschiedlichen Request.

      Soweit funktioniert alles.

      Ich möchte jetzt nur noch die Hintergrundfarbe der Links ändern. Nach dem onclick soll die Farbe geändert werden und wieder zurückgesetzt wenn ein anderer link angeklickt wird.

      Ich hoffe das war halbwegs verständlich...

      1. Om nah hoo pez nyeetz, jimmy!

        diese Links rufen eine javascript Funktion auf, ... Ich möchte jetzt nur noch die Hintergrundfarbe der Links ändern. Nach dem onclick soll die Farbe geändert werden und wieder zurückgesetzt wenn ein anderer link angeklickt wird.

        Füge der Funktion ein Feature hinzu, das die Klassenzugehörigkeit der Verweise ändert.

        Matthias

        --
        1/z ist kein Blatt Papier. http://www.billiger-im-urlaub.de/kreis_sw.gif
        1. Vielen Dank für die Antwort,

          ich habe jetzt eine Lösung gefunden.
          Im CSS habe ich jetzt noch die Pseudoklasse focus

          ul#Navigation a:focus

          hinzugefügt. Das funktioniert aber nur wenn ich die links mit

          href="javascript:ButtonClick(4)"

          und nicht mit

          onclick ="ButtonClick(4)"

          anspreche. Aber das macht nix.

          Danke nochmal.

          1. Hi,

            ich habe jetzt eine Lösung gefunden.
            Im CSS habe ich jetzt noch die Pseudoklasse focus

            Der Fokus geht dem Link aber auch verloren, wenn man irgendwo in die Seite klickt, nicht nur, wenn man auf einen Link in der "Navigation" klickt  ...

            cu,
            Andreas

            --
            Warum nennt sich Andreas hier MudGuard?
            O o ostern ...
            Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
            1. Der Fokus geht dem Link aber auch verloren, wenn man irgendwo in die Seite klickt, nicht nur, wenn man auf einen Link in der "Navigation" klickt  ...

              Oh ja, das stimmt, schade,  da muss ich wohl nochmal was ändern

              1. @@jimmy:

                nuqneH

                Oh ja, das stimmt, schade,  da muss ich wohl nochmal was ändern

                Und dann auch auch Event-Delegation einsetzen anstatt jedem einzelnen 'a'-Element einen Eventhandler zu verpassen. [molily]

                Qapla'

                --
                Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
                (Mark Twain)
      2. @@jimmy:

        nuqneH

        diese Links rufen eine javascript Funktion auf, die mit Hilfe von Ajax einen Request auf eine Datenbank sendet und das Ergebnis dann in einem div weiter unten auf der Seite anzeigt.

        Hm, und was sind das für Daten? Die Inhalte deiner Website? Dann können die nicht allzu wichtig sein, wenn du sie etlichen Besuchern deiner Website vorenthältst; darunter äußerst wichtigen.

        Qapla'

        --
        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
        (Mark Twain)