![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Problem: mam menu, które jest listą nieuporządkowaną i chciałbym by po kliknięciu w jedną z pozycji menu, został ustawiony na niej kolor czerwony i zwiekszona czcionka - słowem chce by aktywny link był cały czas widoczny i różnił się od pozostałych linków. Problem jest jednak taki, że: mój kod jquery ustawia aktywny link taki jak chce, jednak kłopot w tym ze wtedy po kliknięciu na ten link nie przenosi mnie do strony z odnosnikiem - poprostu nie zostaje wykonana zadna akcja. Dlaczego:(?
kod html: Kod jquery:
Jak widać kod jquery daje klasę .inny - kod działa poprawnie jesli chodzi o ustawianie aktywnego linku, jednak powoduje że po kliknięciu na jakikolwiek z linków nie zostaje wykonana zadna akcja - nie przenosi mnie do zadnego linku:( |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Poza tym, że skrypt nie działa bo włączyłeś "preventDefault" całość kodu masz do kitu - po przeniesieniu na inną stronę wszystko wróci do stanu startowego. Innymi słowy po kliknięciu w link klasa inny nie będzie ustawiona
![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
A można prosić o podpowiedź jak to lepiej zrobić?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
- po stronie PHP podczas generowania strony
- w JS pobierać adres i na jego podstawie zmieniać klasy - w JS za pomocą AJAX pobierać treść z podanego linku i zapisywać go do contentu strony |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Użyć PHP
![]() Można wtedy sprawdzić jaki jest adres i w PHP nadpisać klasę czy styl danego LI. Dla ułatwienia można wysyłać coś GETem ![]() Lub pobawić się JavaScriptem na wesoło ![]() Zasada jest prosta (według twojego kodu): Jeżeli w adresie strony na końcu jest "ss.html" to jesteśmy na STRONIE GŁÓWNEJ jeżeli "ss2.html" to na OFERCIE itd... Można po załadowaniu strony poprzez JS i wyrażenia regularne (Patrz obiekt String i metody match, oraz obiekt RegExp) sprawdzić na jakiej podstronie jesteśmy i wtedy na sztywno danemu LI ustawić klasę "inny". Można też być sprytniejszym jeszcze i użyć metody split ![]() Przykład dla strony głównej:
Analizę skryptu pozostawiam Tobie ![]() HTH! ![]() -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 372 Pomógł: 2 Dołączył: 10.05.2009 Ostrzeżenie: (0%) ![]() ![]() |
Próbowałem zmodyfikować kod na:
ale teraz działa tak, że jesli elementy mają jako a href="#" to działa dobrze, jeśli natomiast mają a href="ss.html" bądź jakaś inna strona to po przeniesieniu na tą stronę pozycje menu nie są zaznaczone:( Prosiłbym o pomoc w temacie, jak to zrobić by działało również po przejsciu do innych stron - nie używając PHP |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 01:00 |