bootstrap div崩溃和扩展

时间:2014-12-04 16:36:41

标签: javascript jquery html css twitter-bootstrap

当我点击不同的按钮时,我想单独展开和折叠具有相同id的div元素。

这是我的HTML代码

<body>
    <button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
        <span class="glyphicon glyphicon-collapse-down"></span> Show Status
    </button>
    <div class="collapse" id="dem">
        <p>This is first</p>
    </div>
    <button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
        <span class="glyphicon glyphicon-collapse-down"></span> Show Status
    </button>
    <div class="collapse" id="dem">
        <p>This is Second</p>
    </div>
    <button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
        <span class="glyphicon glyphicon-collapse-down"></span> Show Status
    </button>
    <div class="collapse" id="dem">
        <p>This is Third</p>
    </div>

</body>

这是我的剧本

$(function(){

    $('#dem').on('show.bs.collapse', function () {
        $('#button').html('<span class="glyphicon glyphicon-collapse-up"></span> Hide Status');
    })
    $('#dem').on('hide.bs.collapse', function () {
        $('#button').html('<span class="glyphicon glyphicon-collapse-down"></span> Show Status');
    })
})

当我点击第一个按钮时,它会展开,当我点击第二个或第三个按钮时,第一个按钮的内容会折叠。内容不会扩展到其他按钮。我知道我遗漏了一些脚本代码,但我不知道知道代码是什么。

1 个答案:

答案 0 :(得分:5)

ID应始终为DISTINCT。

将这些更改为类...因为您使用的是jQuery,所以您可以在点击事件中执行类似的操作......

$(".className").hide()
$(".className").show()
$(".className").toggle()

假设他们有不同的ID,那么改变就像是......

$("#button1").on('click', function() {
  if ($(this).is(":visible")) {
    $(".className").hide()
  } else {
    $(".className").show()
  }
});