我遇到麻烦让我的自举手风琴工作。内容全部是动态生成的,我希望手风琴可以嵌套在顶级父手风琴中 - 这是标记:
...
foreach($xml->Continent as $continent) {
echo "<div class='accordion-group'><div class='accordion-header'><a class='accordion-toggle' data-toggle='collapse'>".$continent['Name']."</a><span>".$continent['Status']."</span></div>";
foreach($continent->Country as $country) {
echo "<div class='accordion-body collapse in'><div class='accordion-inner'><div class='accordion-group'><div class='accordion-header'><a class='accordion-toggle' data-toggle='collapse'>".$country['Name']."</a><span>".$country['Status']."</span></div>";
foreach($country->City as $city) {
echo "<div class='accordion-body collapse in'><div class='accordion-inner'>".$city['Name']."<span>".$city['Status']."</span></div></div>";
}
echo "</div></div></div>";
}
echo "</div>";
}
echo "</div>";
...
基本上......大陆都应该在默认状态下折叠。但是一旦你点击并展开一个大陆,它就会列出国家。这些国家也应扩大到展示城市,并停在那里。
之前我遇到了一个不同的方法,但它是非常脆弱的代码,并且在很大程度上依赖于标记,如果我的内容是动态生成的,并且内容可以从1到1变化,我认为这不是一个好的途径。许多。我真的只需要折叠功能才能工作,如果这意味着创建一个分配特定ID的脚本,那么这也有效 - 我只是好奇最好的方法是什么。
答案 0 :(得分:5)
好的......问题如下:
data-parent
属性 - 例如data-parent="#accordion2"
href
个属性 - 例如href="#collapseOne"
id
属性 - 例如id="collapseOne"
可能不是100%完美,但see my example并查看Twitter Bootstrap's "Collapse" documentation
class='accordion-body collapse in'
)。这使得这些节点始终展开。删除最初要折叠的节点(大陆和国家/地区)的“in”类。