简体   繁体   English

我如何处理 bootstrap div 折叠和展开的奇怪行为

[英]How can i handle strange behavior of bootstrap div collapse and expand

Hi i just created a question which is related to this thread .嗨,我刚刚创建了一个与此线程相关的问题。 But i found strange behavior of bootstrap below: (please look at my previous question : https://stackoverflow.com/questions/39786787/how-to-handle-collapse-expand-all-with-single-click-accordion-work-together-in-b )但我在下面发现了 bootstrap 的奇怪行为:(请看我之前的问题: https : //stackoverflow.com/questions/39786787/how-to-handle-collapse-expand-all-with-single-click-accordion-work -一起在-b )

i have 2 different panel group because i added some paragraph between them.我有 2 个不同的面板组,因为我在它们之间添加了一些段落。

 <div class="row extra-left-padding-0">

<div class="spaced-columns">
    <div class="container">


        <button class="collapse-init">Click to disable accordion behavior</button>
        <br />
    </div>

    <div class="container">
        <div class="row">
            <div class="panel panel-default">
                <div class="panel-body">

                    <legend class="col-xs-6 col-sm-5 control-label">1-Yönetici Degerlendirme</legend>
                    <div class="col-xs-6 col-sm-2 col-sm-height col-sm-top">
                        <div id="g0"></div>

                    </div>
                    <div class="clearfix visible-xs-block"></div>
                    <div class="col-xs-4 col-sm-3">
                        <h4>Axp/10 : 
                          </h4>
                    </div>
                    <div class="col-xs-2 col-sm-2">

                    </div>
                </div>
            </div>
        </div>
        <div class="panel-group" id="accordion0">
            <div class="panel panel-default">
                <div class="panel-heading" data-parent="#accordion0" data-target="#collapse0" data-toggle="collapse" role="button">
                    <h4 class="panel-title accordion-toggle">1-Yönetici Değerlendirme Kriterler
      <i class="fa fa-chevron-down fa pull-right"></i>
                    </h4>
                </div>
                <div class="panel-collapse collapse" id="collapse0" role="tabpanel">
                    <div class="panel-body">
                        test0

                    </div>
                </div>
            </div>
        </div>
    </div>

    <div class="container">


        <div class="row">
            <div class="panel panel-default">
                <div class="panel-body">

                    <legend class="col-xs-6 col-sm-5 control-label">2-Piyasa Ve Şirket içi İstihbarat</legend>
                    <div class="col-xs-6 col-sm-2 col-sm-height col-sm-top">
                        <div id="g1"></div>


                    </div>
                    <div class="clearfix visible-xs-block"></div>
                    <div class="col-xs-6 col-sm-3">
                        <h4>Axp/10 : 
                        </h4>
                    </div>
                    <div class="col-xs-2 col-sm-2">

                    </div>
                </div>
            </div>
        </div>
        <div class="panel-group" id="accordion1">
            <div class="panel panel-default">
                <div class="panel-heading" data-parent="#accordion1" data-target="#collapse1" data-toggle="collapse" role="button">
                    <h4 class="panel-title">2-Piyasa Ve Şirket içi İstihbarat Kriterler
      <i class="fa fa-chevron-down fa pull-right"></i>
                    </h4>
                </div>
                <div  class="panel-collapse collapse" id="collapse1" role="tabpanel">
                    <div class="panel-body">
                        TEST
                    </div>
                </div>
            </div>
        </div>
    </div>

    </div>
    </div>

LOOK AT THIS STRANGE BEHAVIOR :看看这个奇怪的行为:

( This one is not working. Not collapsing. ) (这个不起作用。不会崩溃。)

  $('#accordion1').on('show.bs.collapse', function () {
            $('#collapse1').collapse('hide');
            console.log('collpase0 is clicked');
        });

But if i change this;但如果我改变这一点;

 $('#accordion1').on('show.bs.collapse', function () {
            $('#collapse0').collapse('hide');
            console.log('collpase0 is clicked');
        });

i made collapse1 id to collapse0, if i click accrodion1 collapsing is working for accordion0 but if i do that :我将collapse1 id设为collapse0,如果我点击accrodion1 collapsing 适用于accordion0,但如果我这样做:

  $('#accordion1').on('show.bs.collapse', function () {
            $('#collapse1').collapse('hide');
            console.log('collpase0 is clicked');
        });

it is tring to collapse but does not success Not working how can i solve it?它正在崩溃,但没有成功 不工作我该如何解决? if i click accordion0 it should collapse its content.如果我单击accordion0,它应该折叠其内容。

Let me get this right, you are trying to create an accordion effect with paragraph in between such that if you open one panel the other panel should close?让我说得对,您正在尝试创建一个中间有段落的手风琴效果,这样如果您打开一个面板,另一个面板应该关闭? Is that right, if that is the case then you need to simply alternate the collapse actions.是不是这样,如果是这种情况,那么您需要简单地交替折叠动作。 Here is a fiddle I created from your code that shows this https://jsfiddle.net/icerebellion/c59jk54h/1/这是我根据您的代码创建的小提琴,显示了这个https://jsfiddle.net/icerebellion/c59jk54h/1/

$('#accordion0').on('show.bs.collapse', function() {
     $('#collapse1').collapse('hide');
     console.log('collpase0 is clicked');
   });
   $('#accordion1').on('show.bs.collapse', function() {
     $('#collapse0').collapse('hide');
     console.log('collpase1 is clicked');
   });

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM