Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Efekt ? Po najechaniu myszki na odnośnik.
deejay1234
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 18.11.2009

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


Witam mam problem ..

Jak zrobić taki efekt ? [ dołączam obrazek pomocniczy ]



Więc tak . Chciałbym aby po najechaniu myszką na Menu #1 pod tym pojawiły się podstrony ..
Jest taka możliwość ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Jest taka możliwość. Zdarzenie onMouseOver i onMouseOut + div dla kazdego menu (display none/block) + funkcja javascript.

Ten post edytował MateuszScirka 18.11.2009, 16:48:28


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
deejay1234
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 18.11.2009

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


A Mógłbyś jaśniej ? Jestem zielony w tych sprawach.
Go to the top of the page
+Quote Post
piotr94
post
Post #4





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

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


tworzysz ukryte bloki div z treścią dla każdego elementu menu
po najechaniu myszą na odpowiedni element menu pokazujesz blok div z podstronami dla tego menu, a ukrywasz pozostałe...
polecam http://www.dynamicdrive.com/ - tam znajdziesz gotowca


--------------------
http://www.piotr94.net21.pl/ - wykonanie stron i serwisów internetowych
Jeśli moje wypowiedzi były dla Ciebie pomocne, kliknij "Pomógł" i odwdzięcz się ;)
Go to the top of the page
+Quote Post
deejay1234
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 18.11.2009

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


a mógłby ktoś wstawić gotowca ? Bo na tej stronie co podał piotr94 nie mogę znaleźć .
Go to the top of the page
+Quote Post
MateuszS
post
Post #6





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


Mam nadzieję że znasz HTML i sobie przerobisz

  1. <script type="text/javascript">
  2. function show(div1,div2) {
  3. var div1=document.getElementById(div1);
  4. var div2=document.getElementById(div2);
  5. div1.style.display='block';
  6. div2.style.display='block';
  7. }
  8.  
  9. function hide(div1,div2) {
  10. var div1=document.getElementById(div1);
  11. var div2=document.getElementById(div2);
  12. div1.style.display='none';
  13. div2.style.display='none';
  14. }
  15.  
  16. <div style="border: 1px solid black; width: 80px; height: 30px;" onMouseOver="show('div1','div2')" onMouseOut="hide('div1','div2')">MENU</div>
  17.  
  18. <div id="div1" style="display: none; float: left; background-color: lime;">Podmenu jeden</div>
  19. <div id="div2" style="display: none; float: left; background-color: lime; margin-left: 20px;">Podmenu dwa</div>


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
deejay1234
post
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 18.11.2009

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


Bo dokładnie chcę takie coś zrobić .. Tylko mam problem .. nie wiem jak ten skrypt podpiąć pod " Tutoriale "

Go to the top of the page
+Quote Post
potreb
post
Post #8





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


EXAMPLE 1!

http://www.dynamicdrive.com/dynamicindex1/ddtabmenu.htm

albo EXAMPLE 2

Ten post edytował potreb 18.11.2009, 18:14:45


--------------------

Go to the top of the page
+Quote Post
MateuszS
post
Post #9





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

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


jak nie znasz html i css to bedzie Ci ciezko to zrobic

http://www.kurshtml.boo.pl/ - polecam


--------------------
O! Zimniok :P
Go to the top of the page
+Quote Post
wiewiorek
post
Post #10





Grupa: Zarejestrowani
Postów: 247
Pomógł: 11
Dołączył: 5.09.2009

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


Może chodzi o coś takiego:
http://jqueryui.com/demos/tabs/

z jQuery to proste
Go to the top of the page
+Quote Post
profusik
post
Post #11





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 6.07.2005

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


Cytat(MateuszScirka @ 18.11.2009, 16:32:17 ) *
Mam nadzieję że znasz HTML i sobie przerobisz

  1. <script type="text/javascript">
  2. function show(div1,div2) {
  3. var div1=document.getElementById(div1);
  4. var div2=document.getElementById(div2);
  5. div1.style.display='block';
  6. div2.style.display='block';
  7. }
  8.  
  9. function hide(div1,div2) {
  10. var div1=document.getElementById(div1);
  11. var div2=document.getElementById(div2);
  12. div1.style.display='none';
  13. div2.style.display='none';
  14. }
  15.  
  16. <div style="border: 1px solid black; width: 80px; height: 30px;" onMouseOver="show('div1','div2')" onMouseOut="hide('div1','div2')">MENU</div>
  17.  
  18. <div id="div1" style="display: none; float: left; background-color: lime;">Podmenu jeden</div>
  19. <div id="div2" style="display: none; float: left; background-color: lime; margin-left: 20px;">Podmenu dwa</div>


Czy ktoś może podpowie jak przerobić ten efekt tak by Te podmenu były linkami. Same linki to nie problem tylko nie można na nie najechać bo znikają jak się myszką zjedzie z MENU. Kombinuje jak tu dodać opóźnienie działania onmouseout tak by np. po 5 sek od tego zdarzenia te podmenu dopiero znikały - dało by się wtedy chyba kliknąć w linki?
Kombinuje z settimeout() ale coś mi nie wychodzi.

Ktoś pomoże ?

  1. <script type="text/javascript">
  2.  
  3. function showMenu1(div1,div2) {
  4. var div1=document.getElementById(div1);
  5. var div2=document.getElementById(div2);
  6. div1.style.display='block';
  7. div2.style.display='block';
  8. hideMenu2(div3,div4);
  9. }
  10.  
  11. function showMenu2(div3,div4) {
  12. var div3=document.getElementById(div3);
  13. var div4=document.getElementById(div4);
  14. div3.style.display='block';
  15. div4.style.display='block';
  16. }
  17.  
  18. function hideMenu1(div1,div2) {
  19. var div1=document.getElementById(div1);
  20. var div2=document.getElementById(div2);
  21. div1.style.display='none';
  22. div2.style.display='none';
  23. }
  24.  
  25. function hideMenu2(div3,div4) {
  26. var div3=document.getElementById(div3);
  27. var div4=document.getElementById(div4);
  28. settimeout("div3.style.display='none';", 2000);
  29. settimeout("div4.style.display='none';", 2000);
  30. }
  31.  
  32.  
  33. </script>
  34.  
  35. <div style="border: 1px solid black; width: 80px; height: 30px; float: left;" onMouseOver="showMenu1('div1','div2')" onMouseOut="hideMenu1('div1','div2')">MENU1</div>
  36. <div style="border: 1px solid red; width: 80px; height: 30px; float: left;" onMouseOver="showMenu2('div3','div4')" onMouseOut="hideMenu2('div3','div4')">MENU2</div>
  37.  
  38. <br /> <br />
  39. <div id="div1" style="display: none; float: left; background-color: lime;"><a href="link.htm">Podmenu1 - 1</a></div>
  40.  
  41. <div id="div2" style="display: none; float: left; background-color: lime; margin-left: 20px;"><a href="link.htm">Podmenu1 - 2</a></div>
  42.  
  43. <div id="div3" style="display: none; float: left; background-color: lime;"><a href="link.htm">Podmenu2 - 1</a></div>
  44.  
  45. <div id="div4" style="display: none; float: left; background-color: lime; margin-left: 20px;"><a href="link.htm">Podmenu2 - 2</a></div>


Czy wie ktoś może czemu nie chce mi działać settimeout. Jakoś nie mogę chyba zrozumieć jego działania.
Czy da się to co chcę tym settimem zrobić?
A może jakoś inaczej ten efekt uzyskać?

Udało się.
Jakoś sobie poradziłem.
Poniżej wklejam kod, może komuś się przyda.
A może ktoś coś ulepszy - ciekawe czy działa we wszystkich przeglądarkach?.



  1. <script type="text/javascript">
  2.  
  3. function showMenu1(div1,div2) {
  4. var div1=document.getElementById(div1);
  5. var div2=document.getElementById(div2);
  6. div1.style.display='block';
  7. div2.style.display='block';
  8.  
  9. }
  10.  
  11. function showMenu2(div3,div4) {
  12. var div3=document.getElementById(div3);
  13. var div4=document.getElementById(div4);
  14. div3.style.display='block';
  15. div4.style.display='block';
  16. }
  17.  
  18. function hideMenu1(div1,div2) {
  19. var div1=document.getElementById(div1);
  20. var div2=document.getElementById(div2);
  21. div1.style.display='none';
  22. div2.style.display='none';
  23. }
  24.  
  25. function hideMenu2(div3,div4) {
  26. var div3=document.getElementById(div3);
  27. var div4=document.getElementById(div4);
  28. div3.style.display='none';
  29. div4.style.display='none';
  30. }
  31.  
  32. var walkMenu1;
  33. var walkMenu2;
  34. </script>
  35.  
  36. <div style="border: 1px solid black; width: 80px; height: 30px; float: left;"
  37.  
  38. onMouseOver="hideMenu2('div3','div4'),clearTimeout(walkMenu1),showMenu1('div1','div2')"
  39.  
  40. onMouseOut="walkMenu1=setTimeout('hideMenu1(\'div1\',\'div2\')',500)">
  41. MENU1</div>
  42.  
  43. <div style="border: 1px solid black; width: 80px; height: 30px;"
  44.  
  45. onMouseOver="hideMenu1('div1','div2'),clearTimeout(walkMenu2),showMenu2('div3','div4')"
  46.  
  47. onMouseOut="walkMenu2=setTimeout('hideMenu2(\'div3\',\'div4\')',500)">
  48. MENU2</div>
  49.  
  50.  
  51.  
  52.  
  53. <div id="div1" style="display: none; float: left; background-color: lime;"
  54.  
  55. onMouseOver="clearTimeout(walkMenu1),showMenu1('div1','div2')"
  56.  
  57. onMouseOut="walkMenu1=setTimeout('hideMenu1(\'div1\',\'div2\')',500)">
  58. <a href="link.htm">Podmenu1 - 1</a></div>
  59.  
  60. <div id="div2" style="display: none; float: left; background-color: lime; margin-left: 20px;"
  61.  
  62. onMouseOver="clearTimeout(walkMenu1),showMenu1('div1','div2')"
  63.  
  64. onMouseOut="walkMenu1=setTimeout('hideMenu1(\'div1\',\'div2\')',500)">
  65. <a href="link.htm">Podmenu1 - 2</a></div>
  66.  
  67.  
  68. <div id="div3" style="display: none; float: left; background-color: lime;"
  69.  
  70. onMouseOver="clearTimeout(walkMenu2),showMenu2('div3','div4')"
  71.  
  72. onMouseOut="walkMenu2=setTimeout('hideMenu2(\'div3\',\'div4\')',500)"><a href="link.htm">Podmenu2 -
  73.  
  74. 3</a></div>
  75.  
  76. <div id="div4" style="display: none; float: left; background-color: lime; margin-left: 20px;"
  77.  
  78. onMouseOver="clearTimeout(walkMenu2),showMenu2('div3','div4')"
  79.  
  80. onMouseOut="walkMenu2=setTimeout('hideMenu2(\'div3\',\'div4\')',500)"><a href="link.htm">Podmenu2 -
  81.  
  82. 4</a></div>


Ten post edytował profusik 6.01.2010, 09:41:13
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 19:09