Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS][AJAX][JavaScript] Rozpoznanie podstrony
.rmvb's
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 26.09.2012

Ostrzeżenie: (0%)
-----


Witam.
Napisałem funkcję, która podmienia mi podstrony po kliknięciu na dany odnośnik ale mam problem, żeby rozpoznać, który li został kliknięty aby dodać do niego klasę active.
Przy włączeniu strony to proste bo hover ma pierwszy li strony głównej, ale jeśli skopiuję link do trzeciej zakładki i chcę komus go wysłać, to tamten sposób już nie zadziała.

Oto moja funkcja opierująca menu:
  1. $(document).ready(function() {
  2. if(location.hash) {
  3. Laduj(location.hash.substring(1));
  4. }
  5. else{
  6. $("div#content").load("podstrona_home.php");
  7. }
  8.  
  9. $("a.link").click(function(){
  10. Laduj($(this).attr("href").substring(1));
  11. });
  12. function Laduj(adres) {
  13. $("div#content").load("podstrona_" + adres + ".php",
  14. function(response, status, xhr){
  15. if (status == "error") {
  16. $("div#content").html("MSG: " + msg + "<br />STATUS: " + xhr.status + " " + xhr.statusText);
  17. }
  18. });
  19. }
  20. });


Dopuszczam rozwiazanie, dodania do każdego li, klasy o innej nazwie aby później za pomocą np $(".jeden").addClass("HoverMenu"); dodać klasę zaznaczenia.
Proszę o pomoc lub podsunięcie rozwiazania
Go to the top of the page
+Quote Post
StrefaPi
post
Post #2





Grupa: Zarejestrowani
Postów: 235
Pomógł: 50
Dołączył: 2.03.2013

Ostrzeżenie: (0%)
-----


na podstawie location.hash powinieneś rozpoznawać co zostało wybrane...
np. jeżeli ktoś wpisze do paska adresu www.adres-strony.pl/#kontakt to na podstawie location.hash zmieniasz zawartość (to już chyba masz), ale i powinieneś odpowiednio podświetlić element...
Go to the top of the page
+Quote Post
.rmvb's
post
Post #3





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 26.09.2012

Ostrzeżenie: (0%)
-----


Już problem rozwiazałem (IMG:style_emoticons/default/smile.gif)
jeśli by się miało komuś przypadać:
  1. if(location.hash) {
  2. $("."+location.hash.substring(1)).addClass("selected");
  3. Laduj(location.hash.substring(1));
  4.  
  5. }
  6. else{
  7. $(".home").addClass("selected");
  8. $("div#content").load("podstrona_home.php");
  9. }


Wie ktoś może dlaczego, po załadowaniu strony, tło dodanej klasy ląduje mi jakby było nieprzydzielone (po lewej stronie monitora)
dopiero kiedy poruszę myszką nad menu, to ono wraca na swoje dobre miejsce
dlaczego od początku nie jest dobrze ustawione, tylko potrzebuje odświeżenia" ?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 20:08