Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rozwijane menu - problem
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Gordon1x
Kod javascript do rozwijania menu:
  1.  
  2. </head>
  3.  
  4.  
  5. <script type="text/javascript" language="JavaScript">
  6. var akcja = document.getElementById&&!document.all?1:0;
  7. var head = "display:''";
  8. var folder = '';
  9.  
  10. function zwin(){
  11. }
  12.  
  13. function rozwin(get){
  14. folder = akcja?get.nextSibling.nextSibling.style:document.all[get.sourceIndex+1].style;
  15.  
  16. if (folder.display == "none"){
  17. folder.display = "";
  18. }
  19. else{
  20. folder.display = "none";
  21. }
  22. }
  23.  
  24. </script>
  25.  
  26. <h6 style="font-size:8pt" id="1" onClick="javascript:rozwin(this);" title="Kliknij aby zobaczyć zawartość">Tytuł działu</h6>
  27. <span id="1" style="display:none;">
  28. 1.wiersz
  29. <BR>2.wiersz
  30. <BR>3.wiersz
  31. <BR>4.wiersz
  32. </span>
  33.  
  34. <h6 style="font-size:8pt" id="2" onClick="javascript:rozwin(this);">Tytuł działu 2</h6>
  35. <span id="2" style="display:none;">
  36. 1.wiersz 2
  37. <BR>2.wiersz 2
  38. <BR>3.wiersz 2
  39. <BR>4.wiersz 2
  40. </span>
  41.  
  42. </body>
  43. </html>


Nie wiem jak napisać funkcję zwin() aby wcześniej rowinięte menu zwinąć, a rozwinąć tylko wybrane.

Z góry dziękuję za pomoc.
webasek
Najprościej będzie chyba zwinąć wszystkie elementy akie są w pętli for a potem rozwinąć tylko ten jeden czyli w funkcji rozwin najpierw daj zwin gdzie wszystkim elementom dajesz display na none a reszta już jest to ma tylko jedną wadę rozszerzając menu musisz także zmienić pętle chyb, że menu masz w bazie to wtedy tylko użyć php do ilości elementów i gotowe.
Gordon1x
Nie ma potrzeby stosować pętli, ale wielkie dzięki za pomoc.

  1.  
  2. </head>
  3.  
  4.  
  5. <script type="text/javascript" language="JavaScript">
  6. var akcja = document.getElementById&&!document.all?1:0;
  7. var head = "display:''";
  8. var folder = '';
  9. var getopen = '';
  10.  
  11. function zwin(getopen){
  12. var akcja = document.getElementById(getopen)&&!documet.all?1:0;
  13. var head = "display:''";
  14. var folder = '';
  15.  
  16. folder = akcja?getopen.nextSibling.nextSibling.style:document.all[getopen.sourceIndex+1].style;
  17. folder.display = "none";
  18. }
  19.  
  20. function rozwin(get){
  21. folder = akcja?get.nextSibling.nextSibling.style:document.all[get.sourceIndex+1].style;
  22.  
  23. if (folder.display == "none"){
  24. folder.display = "";
  25. if(getopen != ''){
  26. zwin(getopen);
  27. }
  28. getopen = get;
  29. }
  30. else{
  31. folder.display = "none";
  32. }
  33. }
  34.  
  35. </script>
  36.  
  37. <h6 style="font-size:8pt" id="1" onClick="javascript:rozwin(this);" title="Kliknij aby zobaczyć zawartość">Tytuł działu</h6>
  38. <span id="1" style="display:none;">
  39. 1.wiersz
  40. <BR>2.wiersz
  41. <BR>3.wiersz
  42. <BR>4.wiersz
  43. </span>
  44.  
  45. <h6 style="font-size:8pt" id="2" onClick="javascript:rozwin(this);">Tytuł działu 2</h6>
  46. <span id="2" style="display:none;">
  47. 1.wiersz 2
  48. <BR>2.wiersz 2
  49. <BR>3.wiersz 2
  50. <BR>4.wiersz 2
  51. </span>
  52.  
  53. </body>
  54. </html>


Pod Iceweasel (czyli przegladarka na bazie Mozillai) nie działa zwijanie menu.

Jak rozwiazać ten problem?

P.S.
Pod innymi przeglądarkami działa normalnie.

Pomogła zmiana nazw zmiennych:

  1.  
  2. </head>
  3.  
  4.  
  5. <script type="text/javascript" language="JavaScript">
  6. var akcja = document.getElementById&&!document.all?1:0;
  7. var head = "display:''";
  8. var folder = '';
  9. var getopen = '';
  10.  
  11. function zwin(getopen){
  12. var gakcja = document.getElementById(getopen)&&!documet.all?1:0;
  13. var ghead = "display:''";
  14. var gfolder = '';
  15.  
  16. gfolder = akcja?getopen.nextSibling.nextSibling.style:document.all[getopen.sourceIndex+1].style;
  17. gfolder.display = "none";
  18. }
  19.  
  20. function rozwin(get){
  21. folder = akcja?get.nextSibling.nextSibling.style:document.all[get.sourceIndex+1].style;
  22.  
  23. if (folder.display == "none"){
  24. folder.display = "";
  25. if(getopen != ''){
  26. zwin(getopen);
  27. }
  28. getopen = get;
  29. }
  30. else{
  31. folder.display = "none";
  32. }
  33. }
  34.  
  35.  
  36. <h6 style="font-size:8pt" id="1" onClick="javascript:rozwin(this);" title="Kliknij aby zobaczyć zawartość">Tytuł działu</h6>
  37. <span id="1" style="display:none;">
  38. 1.wiersz
  39. <BR>2.wiersz
  40. <BR>3.wiersz
  41. <BR>4.wiersz
  42. </span>
  43.  
  44. <h6 style="font-size:8pt" id="2" onClick="javascript:rozwin(this);">Tytuł działu 2</h6>
  45. <span id="2" style="display:none;">
  46. 1.wiersz 2
  47. <BR>2.wiersz 2
  48. <BR>3.wiersz 2
  49. <BR>4.wiersz 2
  50. </span>
  51.  
  52. </body>
  53. </html>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.