Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> PROBLEM Z MENU W JQUERY
Artu123
post
Post #1





Grupa: Zarejestrowani
Postów: 211
Pomógł: 0
Dołączył: 8.12.2008

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


Witam!

Napisałem swój skrypt menu w jQuery .

link do menu

Gdy najedziemy na kilka linków w menu to taki bałagan się robi . Da się jakoś zrobić , że jak najedziemy na 5 linków , to nie że po kolei zmienia pozycje to podświetlenie i szerokość, tylko od razu zmienia pozycje i szerokość do ostatniego najechanego linku ?

Kod
    $(document).ready(function() {
    
        $("#LinkiDojQuery ul").css("display", "none");
        $("#LinkiDojQuery ul").eq(0).css("display", "block");
            
        $("#HeaderMenuLi a").hover(function(){
        
            var element_index = $("#HeaderMenuLi a").index(this);
                        
            if(element_index == "0") {
                var przejscie = "10px";
                var szerokosc = "108px";
            }
            if(element_index == "1") {
                var przejscie = "128px";
                var szerokosc = "100px";
            }
            if(element_index == "2") {
                var przejscie = "236px";
                var szerokosc = "100px";
            }
            if(element_index == "3") {
                var przejscie = "346px";
                var szerokosc = "108px";
            }
            if(element_index == "4") {
                var przejscie = "465px";
                var szerokosc = "70px";
            }
            if(element_index == "5") {
                var przejscie = "545px";
                var szerokosc = "77px";
            }
            if(element_index == "6") {
                var przejscie = "631px";
                var szerokosc = "64px";
            }
            
            $("#Podswietlenie").animate({marginLeft: przejscie});
            $("#Podswietlenie").animate({width: szerokosc});
            
            $("#LinkiDojQuery ul").css("display", "none");
            $("#LinkiDojQuery ul").css("opacity", ".0");
            $("#LinkiDojQuery ul").eq(element_index).css("display", "block");
            $("#LinkiDojQuery ul").eq(element_index).animate({opacity: "1.0"});
            
        });
    });


to kod jQuery .
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Tak się dzieje, gdy przesuwasz kursor nad wszystkimi elementami po drodze, jeśli zjedziesz na dół, przejedziesz na wybrany element i wjedziesz znów nad menu tak się nie dzieje, zatem sprawa wygląda tak, że przy hover aktywowana jest funkcja dla każdego z elementu po kolei.

Czyli trzeba poszukać rozwiązania na jakieś buforowanie tego hovera, albo zatrzymywanie poprzednio uruchomionych akcji dla poprzedniego hovera (coś jakby funcja stop())
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 09:32