【问题标题】:Bootstrap accordion click on header panel expand/collapseBootstrap手风琴点击标题面板展开/折叠
【发布时间】:2015-12-08 08:08:09
【问题描述】:

我有这个问题:我的移动应用程序有一些基于 Bootstrap 的手风琴。默认行为使折叠和展开仅适用于内部链接,而不是完整的标题面板。我需要改变这一点,这样当用户点击标题面板的任何部分时,手风琴就会展开和折叠。

【问题讨论】:

    标签: html twitter-bootstrap-3


    【解决方案1】:

    嗯,现在回复你的答案有点晚了,但是这对未来会有帮助。 如果我正确理解了您的问题,您需要一个在单击面板标题时展开和折叠的引导手风琴。那么这里是代码:

    	function toggleIcon(e) {
            $(e.target)
                .prev('.panel-heading')
                .find(".more-less")
                .toggleClass('glyphicon-plus glyphicon-minus');
        }
        $('.panel-group').on('hidden.bs.collapse', toggleIcon);
        $('.panel-group').on('shown.bs.collapse', toggleIcon);
    	.panel-group .panel {
    		border-radius: 0;
    		box-shadow: none;
    		border-color: #EEEEEE;
    	}
    
    	.panel-default > .panel-heading {
    		padding: 0;
    		border-radius: 0;
    		color: #212121;
    		background-color: #FAFAFA;
    		border-color: #EEEEEE;
    	}
    
    	.panel-title {
    		font-size: 14px;
    	}
    
    	.panel-title > a {
    		display: block;
    		padding: 15px;
    		text-decoration: none;
    	}
    
    	.more-less {
    		float: right;
    		color: #212121;
    	}
    
    	.panel-default > .panel-heading + .panel-collapse > .panel-body {
    		border-top-color: #EEEEEE;
    	}
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
    
    <div class="container demo">
    
    	
    	<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
    
    		<div class="panel panel-default">
    			<div class="panel-heading" role="tab" id="headingOne">
    				<h4 class="panel-title">
    					<a role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
    						<i class="more-less glyphicon glyphicon-plus"></i>
    						Collapsible Group Item #1
    					</a>
    				</h4>
    			</div>
    			<div id="collapseOne" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingOne">
    				<div class="panel-body">
    					  Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
    				</div>
    			</div>
    		</div>
    
    		<div class="panel panel-default">
    			<div class="panel-heading" role="tab" id="headingTwo">
    				<h4 class="panel-title">
    					<a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
    						<i class="more-less glyphicon glyphicon-plus"></i>
    						Collapsible Group Item #2
    					</a>
    				</h4>
    			</div>
    			<div id="collapseTwo" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingTwo">
    				<div class="panel-body">
    					Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
    				</div>
    			</div>
    		</div>
    
    		<div class="panel panel-default">
    			<div class="panel-heading" role="tab" id="headingThree">
    				<h4 class="panel-title">
    					<a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
    						<i class="more-less glyphicon glyphicon-plus"></i>
    						Collapsible Group Item #3
    					</a>
    				</h4>
    			</div>
    			<div id="collapseThree" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingThree">
    				<div class="panel-body">
    					Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
    				</div>
    			</div>
    		</div>
    
    	</div><!-- panel-group -->
    	
    	
    </div><!-- container -->

    【讨论】:

      【解决方案2】:

      我带来了这个解决方案。它不是很优雅,但很有效。

      HTML

      <div class="panel panel-default">
      <div class="panel-heading" onclick="javascript: expandAccordion( ' HospitalsAcc ' )">
          <a class="panel-title" data-toggle="collapse" data-parent="#TopStories" href="#HospitalsAcc">Hospitals</a>
      </div>
      <div id="HospitalsAcc" class="panel-collapse collapse" style="height: 0px;">
          <div class="panel-body" style="text-align: center">
              <p style="text-align: justify; margin: 0px">GeometryIndex: 1 </p>
              <p style="text-align: justify; margin: 0px">NAME: HOSPITAL </p>
              <p style="text-align: justify; margin: 0px">ADDRNO: 00 </p>
          </div>
      </div>
      

      JS

          function expandAccordion(param) {
              param = param.trim();
              $('#'+param).collapse('toggle')
          };
      

      【讨论】:

        猜你喜欢
        • 2014-02-18
        • 2016-02-27
        • 2020-01-25
        • 2016-02-28
        • 2018-07-24
        • 2014-06-04
        • 1970-01-01
        • 2012-09-23
        • 2015-11-29
        相关资源
        最近更新 更多