Как показать более одного элемента в одном открытом разделе аккордеона jquery ui

Аккордеон jquery ui содержит множество панелей, и каждая панель содержит множество пунктов меню, состоящих из одной строки. Аккордеон jqueryui показывает только один элемент на каждой панели. Как заставить аккордеон показывать больше элементов?

$( "#accordion" ).accordion({
        fillSpace: true,
        autoHeight: false,
        navigation: true,
    collapsible: true
});




<h3>
    <a href="#">mmmmmmm</a></h3>
    <div>
        <ul>
            <li><a target='DoklstlG' href='xxxxxx'>
                jjjjjj</a></li>
            <li><a target='DoklstlO' href='yyyyy'>Ostuarve</a></li>
            <li><a target='UnpaidG' href='zzzzzzz'>hjkhkjjsumine</a></li>
            <li>&nbsp;</li>
...
        </ul>
    </div>

<h3>
    <a href="#">kkkkk</a></h3>
<ul>
    <li><a target='DoklstlVL' href='nnnnnnnn'>V&#228;ljastus</a></li>
    <li><a target='DoklstlSL' href='mmmmmmmmmm'>Sissetulek</a></li>
...

person Andrus    schedule 06.11.2011    source источник


Ответы (2)


Документация конкретно указывает пользователю НЕ делать этого:

ПРИМЕЧАНИЕ. Если вы хотите открыть несколько разделов одновременно, не используйте аккордеон.

Источник: документация по пользовательскому интерфейсу jQuery

ОБНОВИТЬ

Попробуйте изменить fillSpace: false и autoHeight : true, посмотрите, что получится.

person arb    schedule 06.11.2011
comment
Открыт только один раздел. Проблема в том, что в каждом отдельном разделе отображается только один элемент. Вопрос спрашивает, как показать более одного элемента в одном разделе. Открытых разделов нет. - person Andrus; 06.11.2011

как сказано в другом ответе, документация конкретно указывает пользователю НЕ делать этого

"NOTE: If you want multiple sections open at once, don't use an accordion."

тем не менее, есть способ. я использую это так, и я нахожу это очень простым и полезным:
создать несколько панелей аккордеона из одного элемента одну за другой с параметром складной, установленным на true, чтобы эмулировать аккордеон из нескольких панелей.

вот разметка:

<div class="accordion">
    <h3><a href="#">First header</a></h3>
    <div>First content</div>
</div>
<div class="accordion">
    <h3><a href="#">Second header</a></h3>
    <div>Second content</div>
</div>
<div class="accordion">
    <h3><a href="#">Third header</a></h3>
    <div>Third content</div>
</div>

вот сценарий:

$(".accordion").accordion({collapsible: true});
person marxus    schedule 06.11.2011
comment
@marxus: спасибо, отличный хак, я проголосовал за него. Однако я спросил об отображении нескольких элементов на одной панели. В этом случае для экономии места на экране можно открывать только один элемент. - person Andrus; 06.11.2011