0

我正在尝试初始化几个最初打开不同项目的 JQuery UI 手风琴。我不想单独初始化每个手风琴,而是希望将它们全部包含在一个函数中(也使其更容易与 CMS 集成)。我正在尝试以这种方式完成它:

<div class="accordion" data-initiallyopen="1">
    <h3>HEADER 1</h3>
    <div class="details">...</div>
    <h3>HEADER 2</h3>
    <div class="details">...</div>
</div>

$(".accordion").accordion({
    active: $(this).data("initiallyopen"),
    collapsible: true,
    heightStyle: "content"
});

不幸的是,这不起作用。没有控制台错误。$(this) 显然不是正确的对象-但是有没有办法从 init 中访问手风琴?

4

2 回答 2

1

这个小提琴中测试,尝试:

$(".accordion").each(
    function () {
        $(this).accordion( {
            active: $(this).data("initiallyopen"),
            collapsible: true,
            heightStyle: "content"
        })
    }
);
于 2013-03-07T11:11:00.047 回答
0

如果您正在使用引导手风琴功能,如果您将 HTML 类设置为“折叠”以及手风琴,您可以选择哪些手风琴处于打开状态 - 例如:

<div class="accordion" id="accordion2">
    <div class="accordion-group">
        <div class="accordion-heading">
            <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
                Collapsible Group Item #1
            </a>
        </div>
        <div id="collapseOne" class="accordion-body collapse in">
            <div class="accordion-inner">
                Anim pariatur cliche...
            </div>
        </div>
    </div>
    <div class="accordion-group">
        <div class="accordion-heading">
            <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
                Collapsible Group Item #2
            </a>
        </div>
        <div id="collapseTwo" class="accordion-body collapse">
            <div class="accordion-inner">
                Anim pariatur cliche...
            </div>
        </div>
    </div>
</div>

在这个例子中,第二个手风琴将被关闭,因为它的类是“手风琴崩溃”,而第一个手风琴有“手风琴崩溃”。

于 2013-03-07T11:14:44.940 回答