手风琴中的手风琴折叠了父母手风琴

时间:2013-02-26 16:21:14

标签: jquery jquery-ui accordion

我正在使用jqueryui的手风琴控制。我需要设置一个涉及手风琴内的手风琴的导航。 看起来就像它构建所有的手风琴一样好。我扩展第一个,看第二个。当我扩展第二个时,我看到它扩展了,但随后它的父母手风琴卷起并隐藏了我刚刚扩展的儿童手风琴。

此codepen显示了我的问题:http://codepen.io/chodenode/pen/Evnsz

非常感谢您的帮助:

我的HTML:

<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css">
<body>
    <ul id="navigation">
        <li class="parent-li">
            <span class="topic"><a href="">Cardiac</a></span>
            <span class="header"></span>
            <ul>
                <li class="parent-li">
                    <span class="topic">Coronary Atherosclerosis</span>
                    <span class="header"></span>
                    <ul>
                        <li>
                            <a href="">Clinical Outcome Profile</a>
                            <span class="header"></span>
                            <ul>
                                <li>Coronary Atherosclerosis Per 1000 ACA</li>
                                <li>Coronary Atherosclerosis Comorbidity</li>
                                <li>Coronary Atherosclerosis % with PTCA</li>
                                <li>Coronary Atherosclerosis Mortality Rate</li>
                            </ul>
                        </li>
                        <li>
                            <a class="parent" href="">MS-DRG Care Management Profile</a>
                            <span class="header"></span>
                            <ul>
                                <li>MS-DRG 286 Circulatory disorders except AMI w card cath w MCC</li>
                                <li>MS-DRG 302 Atherosclerosis w MCC</li>
                                <li>MS-DRG 303 Atherosclerosis w/o MCC</li>
                                <li>MS-DRG 304 Hypertension w MCC</li>
                            </ul>
                        </li>
                    </ul>
                </li>
                <li class="parent-li">
                    <span class="topic">Chest Pain</span>
                </li>
                <li class="parent-li">
                    <span class="topic">Angina</span>
                </li>
            </ul>
        </li>
        <li class="parent-li">
            <span class="topic">Vascular</span>
            <span class="header"></span>
            <ul></ul>
        </li>
        <li class="parent-li">
            <span class="topic">Respiratory</span>
            <span class="header"></span>
            <ul></ul>
        </li>
    </ul>
</body> 

我的代码:

$(document).ready(function() {
    $('#navigation').accordion({
        header: '.header',
        event: 'click',
        collapsible: true,
        heightStyle: 'content',
        active: false,
        fillSpace: true,
    });

    $('a').click(function(event) {
        event.preventDefault();
    });
});

2 个答案:

答案 0 :(得分:0)

https://stackoverflow.com/a/14616985/1847695是否有任何帮助。

看起来每个嵌套的手风琴都在<div>标签内,然后javascript变为:

$("div.accordian").accordion({ <options> });

这是我还没有尝试过您的codepen示例的唯一选择。

答案 1 :(得分:0)

您需要为子手风琴分别设置idheader。通过使用相同的idheader jQuery同时折叠所有内容。

以下内容应该让您走上正轨...我刚刚复制了您原来的手风琴声明,并使用sub_前缀

进行了更新
$(document).ready(function() {
$('#navigation').accordion({
    header: '.header',
    event: 'click',
    collapsible: true,
    heightStyle: 'content',
    active: false,
    fillSpace: true,
});
$('#sub_navigation').accordion({
    header: '.sub_header',
    event: 'click',
    collapsible: true,
    heightStyle: 'content',
    active: false,
    fillSpace: true,
});

然后更新您的html以反映脚本更改:

<body>
<ul id="navigation">
    <li class="parent-li">
        <span class="topic"><a href="">Cardiac</a></span>
        <span class="header"></span>
        <ul>
            <li id="sub_navigation" class="parent-li">
                <span class="topic">Coronary Atherosclerosis</span>
                <span class="sub_header"></span>