mercredi 1 juillet 2015

How can i make my sub-menu slide down and up when click on main item?

$(document).ready(function () {
        $('.slideout-menu-toggle').on('click', function(event){
          event.preventDefault();
          // create menu variables
          var slideoutMenu = $('.slideout-menu');
          var slideoutMenuWidth = $('.slideout-menu').width();
          
          // toggle open class
          slideoutMenu.toggleClass("open");
          
          // slide menu
          if (slideoutMenu.hasClass("open")) {
            slideoutMenu.animate({
              left: "0px"
            }); 
          } else {
            slideoutMenu.animate({
              left: -slideoutMenuWidth
            }, 250);  
          }
        });
    });

    $('.mobile-sub-menu').click(
        function() {
             $(this).find('li').slideDown();
        },
        function() {
              $(this).find('li').slideUp();
    }); 
.slideout-menu {
  position: absolute;
  top: 100px;
  left: -9999px;
  width: 100%;
  height: 100%;
  background: rgb(248, 248, 248);
  z-index: 1;
}

.slideout-menu .slideout-menu-toggle {
  position: absolute;
  top: 12px;
  right: 10px;
  display: inline-block;
  padding: 6px 9px 5px;
  font-family: Arial, sans-serif;
  font-weight: bold;
  line-height: 1;
  background: #222;
  color: #999;
  text-decoration: none;
  vertical-align: top;
}
.slideout-menu .slideout-menu-toggle:hover {
  color: #fff;
}
.slideout-menu ul {
  list-style: none;
  font-weight: 300;
  border-top: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
}
.slideout-menu ul li {
  /*border-top: 1px solid #dddddd;*/
  border-bottom: 1px solid #dddddd;
}
.slideout-menu ul li a {
  position: relative;
  display: block;
  padding: 10px;
  color: #999;
  text-decoration: none;
}
.slideout-menu ul li a:hover {
  background: #aaaaaa;
  color: #fff;
}
.slideout-menu ul li a i {
  position: absolute;
  top: 15px;
  right: 10px;
  opacity: .5;
}
<script src="http://ift.tt/1qRgvOJ"></script>
<button type="button" class="slideout-menu-toggle">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>

<body>

  <div class="slideout-menu">
    <ul>
      <li><a href="#">MANUALS</a>
        <ul class="mobile-sub-menu">
          <li><a href="#">1</a></li>
          <li><a href="#">1</a></li>
          <li><a href="#">1</a></li>
        </ul>
      </li>
      <li><a href="#">NEWS</a></li>
      <li><a href="#">SPARE PART</a></li>
      <li><a href="#">Photo Gallery</a></li>
      <li><a href="#">WHERE TO BUY</a></li>
      <li><a href="#">SUPPORT</a></li>
      <li><a href="#">EDIT BOOK</a></li>
    </ul>
  </div>

I add some sub-item under MANUALS main item. What can I do to make it invisible and slide down or up when I click on its parent main item?

I try to write some jQuery code but not working. Is something wrong on my jQuery code?

Aucun commentaire:

Enregistrer un commentaire