jquery - 使用多个按钮和 div 展开和折叠

标签 jquery html css

再次单击按钮时,我需要帮助折叠 div。

我有这个代码:

$('#btn1').click(function() {
  $('.collapse').hide();
  $('#demo').show();
});
$('#btn2').click(function() {
  $('.collapse').hide();
  $('#demo1').show();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container" ng-app="myApp" ng-controller="customersCtrl">
  <button type="button" class="btn btn-default" data-toggle="collapse" data- target="#demo" id="btn1">Company Details</button>
  <button type="button" class="btn btn-default" data-toggle="collapse" data- target="#demo1" id="btn2">Commercial Details</button>
  <div id="demo" class="collapse">
    1st div
  </div>
  <div id="demo1" class="collapse">
    2nd div
  </div>
</div>

来自这里:Bootstrap Collapse with multiple button and div

此代码有效并在单击 button2 时隐藏 div1 并展开 div2,但在再次单击 button2 时它不会隐藏 div2。

有没有办法在单击 button1 时显示 div1 并在单击 button2 时隐藏 div1 并展开 div2。但是,当再次单击 button2 时,它会隐藏 div2,因此所有可折叠的 div 都被折叠,并且此行为也适用于 button1 和 div1。

最佳答案

像这样更新你的脚本

$('#btn1').click(function(){

      if($('#demo').is(':visible')){
           $('#demo').hide();
      }else{
          $('#demo1').hide();
          $('#demo').show();

      }

    });
    $('#btn2').click(function(){

      if($('#demo1').is(':visible')){
           $('#demo1').hide();
      }else{
           $('#demo').hide();
          $('#demo1').show();
      }
    });

关于jquery - 使用多个按钮和 div 展开和折叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48494847/

相关文章:

jquery - 视频播放器启动时暂停音频播放器

javascript - jquery 2 输入字段验证和成功提交后的 POST 1 值

javascript - 根据动态样式属性的存在来定位元素 - Jquery

javascript - 无法打开触发框

javascript - WebStorm 内置 Web 服务器为 index.html 中包含的每个 css 和 js 文件获取 404

javascript - 自定义 JQuery Lightbox 在 Wordpress 网站上不起作用

jquery - Elastislide jQuery 插件错误

javascript - 页面刷新时的页面重定向不起作用

css - 维护打印 CSS 样式表文件

html - 将最大宽度并在父级中间对齐文本