Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Wysuwany blok
adam882
post
Post #1





Grupa: Zarejestrowani
Postów: 289
Pomógł: 1
Dołączył: 2.11.2007

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


Witam

Chcę zrobić w jquery tak, aby boczny pasek z kategoriami: <div id="kat_blok">...</div> po najechaniu myszką przesuwał się do góry (nakładając się na blok nadrzędny <div id="lokalizacja">...</div>), a po odjechaniu myszką żeby wrócił na swoje miejsce. Wykombinowałem coś takiego:

[JAVASCRIPT] pobierz, plaintext
  1. var lock = false, lock2 = false;
  2.  
  3. $('#kat_blok').mouseover(function()
  4. {
  5.  
  6. if(!lock)
  7. {
  8. $('#lokalizacja').hide(100);
  9. }
  10. lock = true;
  11.  
  12.  
  13. }).mouseout(function()
  14. {
  15. if(lock){
  16. if(!lock2)
  17. {
  18. $('#lokalizacja').show(100,function(){lock=lock2=false;});
  19. }
  20. lock2 = true;
  21. }
  22.  
  23. });
[JAVASCRIPT] pobierz, plaintext

Wygląda to tak, że blok nadrzędny po prostu znika, a w jego miejsce wskakuje blok pod spodem (ale efekt jest osiągnięty). Tylko jest problem - po najechaniu na niego myszką - blok skacze od góry do dołu, a po odjechaniu wraca na swoje miejsce. Jak zrobić, aby po najechaniu blok przeniósł się do góry, a po odjechaniu wrócił na swoje miejsce.

Ten post edytował adam882 18.12.2011, 17:29:32
Go to the top of the page
+Quote Post
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Pozycjonowanie absolutne jest jak najbardziej właściwe, ale dodatkowo trzeba użyć z-index, aby "wyciągnąć" ten boczny pasek nad wszystkie niezbędne warstwy (na sam wierzch). Wtedy te lock-i nie będą potrzebne. Być może trzeba będzie umieścić pozostałą część HTML (zawartość body) w warstwie spodniej, czyli takiej, która ma mniejszą wartość z-index.

W chwili obecnej masz wszystko na jednej warstwie w związku z czym przeglądarka nie rozpoznaje, czy kursor jest nad określonym elementem, czy już nie, tym bardziej, że ten element zmienia położenie (stąd efekt "skakania").
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: 18.09.2025 - 17:32