Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS/CSS] Problem z klasami w CSS i JS
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Kostek.88
Witam, mam taki oto problem: zrobiłem na stronie skrypt do zmiany wielkości liter w divie, w którym wyświetlana jest treść strony. Wszystko działa sprawnie i idealnie. Na stronie mam trzy literki "A" różnej wielkości, standardowo symbolizujące wielkość liter.

przykład:
http://img166.imageshack.us/img166/2366/clipboard2kh0.jpg

I mój problem polega na tym. Mam podobny kod CSS dla każdej literki:

Kod
.text_size a.small {
     display: block;
     float: left;
     width: 15px;
     height: 15px;
     margin-top: 6px;
     margin-left: 1px;
     margin-right: 1px;
     background: url('gfx/font_small.gif') no-repeat;
}


I teraz tak: chciałem zrobić, by po kliknięciu na każdą literkę, podświetlała się na biało po prostu, czyli musi zostać uaktywniona klasa:

Kod
.text_size a.small2 {
           display: block;
           float: left;
           width: 15px;
           height: 15px;
           margin-top: 6px;
           margin-left: 1px;
           margin-right: 1px;
           background: url('gfx/font_small_active.gif') no-repeat;
}


Jakie wybrać najlepsze rozwiązanie do zrobienia tego? Istnieje w CSS coś takiego jak zdarzenie click? Czy może lepszym rozwiązaniem będzie funckja JS zmieniająca klasę (która zresztą mi nie działa tongue.gif)

Pozdrawiam
nospor
poczytaj o hover dla css
Kostek.88
W hover wszystko jest związane ze zdarzeniem po najechaniu myszką na element, a nic o clicku nie widzę niestety...
nospor
przepraszam. Umknelo mi ze chodzi ci o klikniecie.
No to musisz uzyc js. W momencie klikniecia nadajesz elementowi druga klase.
Kostek.88
Nadałem elementom odpowiednie ID i użyłem tego:

Kod
<a href="#" onclick="document.getElementById['small'].className = 'small_select'"></a>

Jednak mi to nie działa... nawet jak zrobię tak:

Kod
<a href="#" onclick="small.className = 'small_select'"></a>

też nie działa. Ciekawe co źle zrobiłem...
lord_t
getElementById['small'] => getElementById('small')

Btw: "small" to nazwa klasy chyba, a ta funkcja przyjmuje id elementu.
Kostek.88
O fuck, no tak... tak to jest jak się robi kilka rzeczy na raz i się nawiasy pomylą tongue.gif Dzięki wielkie smile.gif Pozdrawiam

BTW: ID jest dobry, też nazywa się small
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.