繁体   English   中英

手风琴菜单无法正常工作

[英]accordion menu not working properly

我正在使用手风琴菜单。 加载后,第二个菜单始终会向上滑动,而不是单击后向上滑动。 我想改变它。 单击后,应详细说明子菜单。 我没有怎么做。 这是我的js代码

function initMenu() {
    $('#menu ul').hide();
    $('#menu ul:first').show();

    $('#menu li a').click(function() {
        var checkElement = $(this).next();

        if ((checkElement.is('ul')) && (checkElement.is(':visible'))) {
            return true;
        }

        if ((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
            $('#menu ul:visible').slideUp('normal');
            checkElement.slideDown('normal');
            return false;
        }
    });
}

$(document).ready(function() {
    initMenu();
});

这是我的CSS

#menu{
    font-family:'Open Sans';
    font-size:13px;
    text-align:center;

text-transform:uppercase;
line-height:15px;
width:250px;
font-weight:bold;




}
ul#menu, ul#menu ul {

  list-style-type:none;
  margin: 0;
  padding: 0;
  padding-top:5px;
  padding-bottom:0px;
  width: 15em;
  background:url(images/button_menu.png) no-repeat;
  line-height:15px;
}

ul#menu a {
  display: block;
  text-decoration: none;    
}

ul#menu li {
  margin-top: 1px;
}

ul#menu li a {

  line-height:15px;
  text-transform:uppercase;
  color: #fff;  
  padding: 0.5em;
  line-height:20px;

}

ul#menu li a:hover {

  background:url(images/button_menu_hover.png) no-repeat;
}

ul#menu li ul li a {
  background:#F7F7F7;
  color: #000;
  padding-top: 3px;
  padding-bottom: 3px;
  line-height: 14px;

  padding-left: 10px;
   border-bottom:0px;
   line-height:20px;

}

ul#menu li ul li a:hover {
  background:url(images/button_menu_hover.png) no-repeat;
  border-left: 5px #006600 solid;
  padding-left: 10px;
  color:#fff;
}

请帮我怎么做

我正在做类似的事情,这就是我从正在使用的代码中提取的内容。

instance.$el.find('li.st-open').each( function() {
var $this   = $(this);
$this.css( 'height', $this.data( 'originalHeight' ) + $this.find('div.st-content').outerHeight( true ) );
});

CSS是:

.st-accordion ul li.st-open > a{
margin-top:70px;
}
.st-accordion ul li{
height:auto;
}
.st-accordion ul li > a span{
 visibility:hidden;
}

和html是:

<div id="st-accordion" class="st-accordion">
   <ul>
      <li><a href="#"><h2>Title 1</h2></a>
          <div class="st-content">
            <p>Content goes here.</p>
          </div>
      </li>
      <li><a href="#"><h2>Title 2</h2></a>
          <div class="st-content">
            <p>Content goes here.</p>
          </div>
      </li>
  </ul>
</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM