![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
witam mam problem z linkami, otóż chciałbym aby po naciśnieciu na link, zmienił on kolor na podany przeze mnie i dodatkowo zeby cały czas utrzymywal ten kolor az do kliknięcia w inny link. Jak to zrobić? chyba się nie da przy pomocy samego CSS.
Pseudoklasa a:active wogole nie zdaje swojej roli, ponieważ ona powoduje że element podczas kliknięcia zmienia kolor, a jak link się załaduje, to wraca do poprzedniego koloru, dlatego potzebuje jakiegos innego rozwiązania |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 384 Pomógł: 13 Dołączył: 16.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
W SAMYM css nieda sie tego zrobic. Da sie wybrac w css link z okreslomym adresem ale nieda sie pobrac aktualnego adresu na jakim jestesmy. W js niby sie da ale ktos ma wyl js albo korzysta z kom na ktorej niema js i sie niewyswietli, chyba ze cala strona jest w js to to by bylo lepsze rozwiazanie wtedy. Mysle ze najlepiej zrobic to w php ale bylo by wygodniej gdybys pokazal jak generowane jest menu zeby powiedziec co bedzie najleprze. Mozesz np. Sprawdzac czy link odnosi sie do aktualnej strony, jesli tak dodajesz mu klase current i zalatwione.
EDIT: Przyszla mi do glowy jeszcze jedna mozliwosc, mozna generowac przez php css'a a dokladnie wykorzystac selektor atrybutow. Jako nazwe atrybutu wstawic href, jako wartosc adres strony np. Strona.pl/news.php i dodac w ten sposob styl linku o ktory Ci chodzi. Niepodam niestety kodu bo pisze z komorki, ale to zwykly selektor css. Wady rozwiazania: wygenerowany css sie nie cache'uje w przegladarce ale jest to pare znakow wiec mala strata. Zalety: wykonujemy tylko jedna czynnosc w php, zamiast za kazdym razem sprawdzac link czy nie nalezy do aktualnego adresu Mysle, ze warto sprobowac, sam moze przetestuje w najblizszym projekcie. Pozdrawiam Ten post edytował Agape 18.12.2009, 13:34:41 -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
menu niestety generowane dynamicznie,
a jak można coś takiego zrobić w javascript? |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 384 Pomógł: 13 Dołączył: 16.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zależy czy korzystasz z samego JavaScript, czy może z Ajax'owego frameworka np jQuery. Ale myk polega na tym, że pobierasz adres strony na której jesteś, np:
albo
nie jestem pewien ale chyba to pierwsze jest poprawne, a później szukasz elementu w drzewie DOM który ma taki adres w atrybucie href. Nie wiem jak to będzie dla czystego JavaScript+DOM mogę Ci podać jak to się robi w jQuery. Musisz skorzystać z selektora atrybutów wpisując jako element a, atrybut href i wartość, adres strony -------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 13.12.2009 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
menu niestety generowane dynamicznie, a jak można coś takiego zrobić w javascript? Ni e w jaki sposób generujesz menu ale myśle że możesz ten problem rozwiązać dzieki sesjom. Na podobnej zasadzie wykonałem sortowanie produktów w sklepie: Tworzysz sesje a później w menu coś w stylu To tylko szkic ale myślę, że na tej zasadzie można pobrać dowolny link i zapisać go jako aktywny a poniżej porównujesz to co masz w menu z danymi z sesji. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 15.07.2025 - 22:09 |