2014-02-18, 18:28
  #1
Medlem
Tjo

Har detta:

HTML-kod:
<button id="1">knapp</button>
<button id="2">knapp</button>
<button id="3">knapp</button>

Kod:
.active{
background: #222;
}

Kod:
$('button').on('click', function(){
$(this).addClass('active');
});

Men grejen är att jag vill att classen active ska tas bort från förgående knapp om man clickar en annan, vilket inte är fallet just nu.

Någon?
Citera
2014-02-18, 18:32
  #2
Medlem
Infinitums avatar
Sämsta lösningen kanske skulle vara att vid OnClick tömmer alla knappar på classen, och sedan ger knappen som trycktes classen 'active'. Typ,

Kod:
$('button').on('click', function(){
$('button').removeClass('active');
$(this).addClass('active');
});

Du lär säkert hitta en bättre lösning här.

eller här!
__________________
Senast redigerad av Infinitum 2014-02-18 kl. 18:37.
Citera
2014-02-18, 19:44
  #3
Medlem
Povels avatar
1) När du tänker sätta "active" på ett element, kolla först om det fanns ett satt till active sedan tidigare. (Om det är samma som du redan tänker sätta på kan du antagligen avbryta operationen.)
2) I så fall, ta bort "active" från det.
3) Sedan sätter du "active" på det nya, och sparar undan det i en variabel som du kan kolla på nästa gång du skall sätta active (1).

/p
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in