Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Problem ze skryptem menu nawigacyjnego
Forum PHP.pl > Forum > Przedszkole
PHPapprentice
Witam

Napisałem skrypt menu nawigacyjnego które się otwiera po najechaniu na niego myszką. Wszystko działa spoko ale mam problem z zamknięciem menu. Po prostu nie wiem jak to napisać , więc na razie nie mam jeszcze nic napisane do zamknięcia menu a chciałbym żeby się zamykało jak zjadę myszką z obszaru menu na dowolny inny obszar.

Menu można zobaczyć na stronie :

Moje menu nawigacyjne

Podaje poniżej kod menu :

1. Kod HTML :

  1. <!doctype html>
  2. <head>
  3. <meta charset='utf-8'>
  4. <title>JavaScript Menu Lynda Library</title>
  5. <link type='text/css' href='mainmenu.css' rel='stylesheet'>
  6. <script type='text/javascript' src='jquery-1.11.1.js' language='javascript'></script>
  7. <script type='text/javascript' src='mainmenu.js' language='javascript'></script>
  8. </head>
  9. <body>
  10. <div class='menu_bar'>
  11. <div class='library_div'>
  12. <p class='library_text'>
  13. Browser the Library
  14. </p>
  15. </div>
  16. </div>
  17. <div class='submenu_div'>
  18. <div class='submenu_options'>
  19. <div class='sub_option' id='subop1'>
  20. <p class='suboption_text'>
  21. 3D + Animation
  22. </p>
  23. </div>
  24. <div class='sub_option' id='subop2'>
  25. <p class='suboption_text'>
  26. Audio + Music
  27. </p>
  28. </div>
  29.  
  30. //.....
  31. //Przyciołem trochę skrypt żeby można go było zamieścić w poście.
  32.  
  33. <div class='sub_option' id='subop12'>
  34. <p class='suboption_text'>
  35. Web
  36. </p>
  37. </div>
  38. </div>
  39. <div class='submenu_info_options'>
  40. <div class='submenu_content' id='subcont1'>
  41. <h3 class='submenu_header'>Course Topics</h3>
  42. </div>
  43. <div class='submenu_content' id='subcont2'>
  44. <h3 class='submenu_header'>3D + Animation Software</h3>
  45. </div>
  46. <div class='submenu_content' id='subcont3'>
  47. <h3 class='submenu_header'>Additional Resources</h3>
  48. </div>
  49. </div>
  50. </div>
  51. </body>
  52. </html>


2.Kod JavaScript a raczej jQuery :

Kod
$(function(){
       $('.submenu_div').hide();
      
       $('.library_div').mouseover(function(){
           $('.submenu_div').show();
       });
      
       $('.library_div').mouseover(function(){
           $(this).css('background','#CCCCCC');
           $('.library_text').css('color','black');
       }).mouseout(function(){
           $('.library_text').css('color','white');
       });
      
       $('.sub_option').mouseover(function(){
           $(this).css('background','white');
       }).mouseout(function(){
           $(this).css('background','#CCCCCC');
       });
      
       $('#subop1').mouseover(function(){
           var str = '<div class=\'submenu_content\' id=\'subcont1\'><h3 class=\'submenu_header\'>Course Topics</h3>';
           str = str + '<p class="subcont_text">Business Skill</p>';
           str = str + '<p class="subcont_text">Communication</p>';
           str = str + '<p class="subcont_text">Materials</p>';
           str = str + '<p class="subcont_text">Modeling</p>';
           str = str + '<p class="subcont_text">Particles</p>';
           str = str + '<p class="subcont_text">Mixing</p>';
           str = str + '<p class="subcont_text">Music Business</p>';
           str = str + '<p class="subcont_text">Music Production</p>';
           str = str + '<p class="subcont_text">Music Trasmutation</p>';
           str = str + '<p class="subcont_text">See all</p>';
           str = str + '</div>';
           $('#subcont1').html(str);
          
           var str1 = '<div class=\'submenu_content\' id=\'subcont1\'><h3 class=\'submenu_header\'>3D + Animation Software</h3>';
           str1 = str1 + '<p class="subcont_text">3D Max</p>';
           str1 = str1 + '<p class="subcont_text">After Effects</p>';
           str1 = str1 + '<p class="subcont_text">Blender</p>';
           str1 = str1 + '<p class="subcont_text">Cinema 4D</p>';
           str1 = str1 + '<p class="subcont_text">Flash Professional</p>';
           str1 = str1 + '<p class="subcont_text">Maya</p>';
           str1 = str1 + '<p class="subcont_text">Mud Box</p>';
           str1 = str1 + '<p class="subcont_text">Photoshop</p>';
           str1 = str1 + '<p class="subcont_text">Unity</p>';
           str1 = str1 + '<p class="subcont_text">ZBrush</p>';
           str1 = str1 + '<p class="subcont_text">See all</p>';
           str1 = str1 + '</div>';
           $('#subcont2').html(str1);
          
           var str2 = '<div class=\'submenu_content\' id=\'subcont3\'><h3 class=\'submenu_header\'>Additional Resources</h3>';
           str2 = str2 + '<p class="subcont_text">Articles From our Experts</p>';
           str2 = str2 + '<p class="subcont_text">Playlist center</p>';
           str2 = str2 + '</div>';
           $('#subcont3').html(str2);
           $('#subcont3').html(str2);
          
       });
          
           //.....
           //Też musiałem troche przyciąć tutaj skrypt żeby się zmieścił
      
});


3. Kod CSS :

Kod
.menu_bar{
   width: 100%;
   height: 35px;
   background: #444444;
}

.submenu_div{
   width: 994px;
   height: 410px;
   position: absolute;
   top: 35px;
   left: 150px;
   background: #CCCCCC;
}

.library_div{
   width: 180px;
   height: 100%;
   background: #444444;
   margin-left: 150px;
   text-align: center;
   cursor: pointer;
}

.library_text{
   color: white;
   font-size: 14pt;
   font-weight: bold;
   padding-top: 5px;
}

.submenu_options{
   width: 180px;
   height: 100%;
   background: #CCCCCC;
   float: left;
}

.submenu_content{
   float: left;
   width: 270px;
   height: 100%;
}

.submenu_info_options{
   background: white;
   width: 813px;
   height: 100%;
   float: left;
   border-bottom: 1px solid black;
   border-right: 1px solid black;
}

.sub_option{
   text-align: left;
   cursor: pointer;
}



.submenu_header{
   font-size: 14pt;
   color: black;
   padding-top: 10px;
   padding-left: 19px;
}


Ma ktoś jakiś patent na to jak dorobić żeby to menu się zamykało. smile.gif

Pozdrawiam.
tzm
Wrzuć to na jsfiddle
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.