Accordion-group - 项目自动下降

时间:2014-04-16 20:53:44

标签: javascript jquery accordion jquery-ui-accordion

需要以下手风琴ID的帮助。现在它适用于下拉菜单,但是当我打开页面时,第一个列表项已经被删除了。我需要能够点击它然后它就会失效。目前,始终至少有一个列表项打开。请指教。谢谢!

  <ul id="accordion">
                <li class="title" id="cars"></li>
                <li class="content" id="car">


                        <p></p>

                </li>
                <li class="title" id="watc"> </li>
                <li class="content">


                        <p></p>

                </li>
                <li class="title" id="jewe"></li>
                <li class="content">


                            <p></p>

                </li>
                <li class="title" id="meta"></li>
                <li class="content">


                        <p></p>

                </li>


            </ul>

1 个答案:

答案 0 :(得分:0)

我不知道我是否理解你的问题以及这是否有助于你 在这个示例中(Fiddle),我向您推荐一个简单的手风琴,您可以在其中将文本数量更改为li元素。
当您加载页面时,手风琴会关闭 单击li元素时,会将其自动设置为自动高度 这只是一个简单的例子,我希望它可以帮到你 如果这个解决方案不符合您的需求,我会为您浪费时间而道歉 使用此解决方案,您需要的所有jQuery代码都是:

<script type="text/javascript">
$(document).ready(function(){
       $('#accordion li').click(function(){
            var alt=$(this).height()
            if($(this).hasClass('open ok')&&alt>40){$(this).animate({'height':'40px'},1000)}else{
            $(this).addClass('open ok').css({'background-color':'#CCC'})
            var classe=$('li').hasClass('ok')
            if(classe){
                $(this).css({'height':'auto'})
                var auto=$(this).height()
                $(this).height(alt).animate({'height': auto}, 1000);
                $('li').not(this).animate({'height':'40px'},500).removeClass('ok').removeAttr('style')
                }
            }
        })
})
</script>