javascript - 如何在 div 标签上一个接一个地关闭和打开

标签 javascript jquery html css twitter-bootstrap

基本上,我试图轻松刷新可折叠的 div。其中,当我想更改数据时,我可以运行一个脚本,该脚本基本上关闭并打开 div(如果 div 打开),如果 div 关闭则简单地打开它。 我的目标是使用与此类似的东西。

$("#procDiv").html("New Data");
if($("#procDiv").attr('class').contains("collapse in")) {
    $("#procDiv").collapse("close");
    $("#procDiv").collapse("open");
} else {
    $("#procDiv").collapse("open");
}

但我遇到了一个问题,因为当我告诉它打开时它没有打开,我认为这是因为它在动画中,所以它不期望任何新指令.

HTML

<form class="form-inline">
  <div class="form-group">
    <label class="sr-only" for="inputAirport">Airport</label>
    <input type="text" class="form-control" id="inputAirport" placeholder="Airport">
  </div>
  <button class="btn btn-primary btn-sm btn-search">Search</button>
</form>

<div class="panel panel-default">
    <div class="panel-heading">
        <h4 class="panel-title">
            <a data-toggle="collapse" href="#procDiv">Procedures</a>
        </h4>
    </div>
    <div id="procDiv" class="panel-collapse collapse"></div>
</div>

最佳答案

if($("#procDiv").hasClass("collapse in")) {
    $("#procDiv").slideDown();
} else {
    $("#procDiv").slideUp();
}

这样试试。

顺便说一下,您的代码中第 2 行存在语法错误。你错过了双引号

关于javascript - 如何在 div 标签上一个接一个地关闭和打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47747664/

相关文章:

javascript - 具有此名称的 Controller 未注册——错误 : $controller:ctrlreg

javascript - 重新加载后相同的功能没有给出相同的结果

javascript - 如何使用模块化 JavaScript 模式创建单独的对象

javascript - 如何用CSS3 rotate3d和transformZ控制重叠元素的绘制顺序?

javascript - jQuery 自动完成将值附加到 URL

javascript - 如何在鼠标悬停表格行上的鼠标旁边显示图像

javascript - 使用 JQuery/JS 在 ScrollTop 之后隐藏菜单

javascript - 带有无限幻灯片的 jQuery div(不间断,就像星球大战)

javascript - 有什么方法可以绕过 Canvas 安全异常(外部图像到数据字符串)

php - OPERA 中输入按钮周围的黑框?