bootstrap手风琴制作方法详解
手风琴(Collapse)效果展示
Bootstrap框架中Collapse插件(折叠)其实就是我们常见的手风琴效果。点击标题,可以让其对应的内容显示或隐藏
<divclass="panel-group"id="accordion"> <divclass="panelpanel-default"> <divclass="panel-heading"> <h4class="panel-title"><adata-toggle="collapse"data-parent="#accordion"href="#collapseOne">标题一</a></h4> </div> <divid="collapseOne"class="panel-collapsecollapsein"> <divclass="panel-body">标题一对应的内容</div> </div> </div> <divclass="panelpanel-default"> <divclass="panel-heading"> <h4class="panel-title"><adata-toggle="collapse"data-parent="#accordion"href="#collapseTwo">标题二</a></h4> </div> <divid="collapseTwo"class="panel-collapsecollapse"> <divclass="panel-body">标题二对应的内容</div> </div> </div> <divclass="panelpanel-default"> <divclass="panel-heading"> <h4class="panel-title"><adata-toggle="collapse"data-parent="#accordion"href="#collapseThree">标题三</a></h4> </div> <divid="collapseThree"class="panel-collapsecollapse"> <divclass="panel-body">标题三对应的内容</div> </div> </div> </div> <scriptsrc="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <scriptsrc="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
手风琴–手风琴结构
手风琴最关键的部分,就是每个标题对应有一个内容,在Bootstrap框架中将这两个部分组合起来称为一个panel页板,如右边效果所示,他就有三个panel面板,将这三个面板组合在一起,就是一个面板组合panel-group,也就是手风琴的结构。
简单点就是一个触发器和一个折叠区:
<buttontype="button"class="btnbtn-danger"data-toggle="collapse"data-target="#demo">触发器</button>
<divid="demo"class="collapsein">折叠区</div>
手风琴–声明式触发手风琴(二)
第三步,为了把标题和内容区捆绑在一起,可以通过锚链接的方法,把标题区域和面板区连在一起:
第四步,控制面板内容区是否可视。在Bootstrap框架中,如果你想让内容区域不可视,只需要在panel-collapse样式上添加collapse:
每个面板的内容区都被隐藏起来了,变成不可视,但有时候希望默认第一个面板内容是可视的,
你只需要在collapse基础上再追加in样式:
手风琴–声明式触发手风琴(三)
第五步,激活手风琴交互行为。要完成交互行为,需要在标题链接中自定义两个属性,一个是data-toggle,并且取值为collapse;另一个是data-target,取值为各个面板内容区的标识符,比如说ID,
注意:在这个案例中不加入data-target=”#panel1”也可以,因为前面已经有了href=”#panel1”,但如是button按钮作为触发器就必须使用data-target=”#panel1”语句了。
第六步,定义data-parent属性,实现点击一个其中一个元素时,关闭所有的折叠区,再打开所单击的区域(如果所单击区域是展示的,则会关闭)。这个data-parent取值与手风琴面板容器的标识符相匹配,比如这个例子是指#myAccordion
<divclass="panel-group"id="myAccordion"> <divclass="panelpanel-accordionpanel-default"> <divclass="panel-heading"> <h4class="panel-title"> <ahref="#panel1"data-toggle="collapse"data-target="#panel1"data-parent="#myAccordion">标题一</a> </h4> </div>
☑使用panel的panel-title做为触元素,使用panel-body的父元素作为折叠区;
☑使用一个panel-group来包含多个panel,从而实现手风琴效果;
☑每个panel里的触发元素都要指定data-parent属性;
☑data-parent属性的值对应panel-group样式元素的ID或者其他样式标识符;
☑触发元素需要指定data-toggle,并且值为collapse;
☑触发元素都要指定data-target属性;
☑data-target属性的值对应panel-body的父元素的ID或者其他样式标识符。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。