bootstrap手風(fēng)琴制作方法詳解
手風(fēng)琴(Collapse)效果展示
Bootstrap 框架中 Collapse插件(折疊)其實(shí)就是我們常見的手風(fēng)琴效果。點(diǎn)擊標(biāo)題,可以讓其對(duì)應(yīng)的內(nèi)容顯示或隱藏
<div class="panel-group" id="accordion"> <div class="panel panel-default"> <div class="panel-heading"> <h4 class="panel-title"><a data-toggle="collapse" data-parent="#accordion" href="#collapseOne">標(biāo)題一</a></h4> </div> <div id="collapseOne" class="panel-collapse collapse in"> <div class="panel-body">標(biāo)題一對(duì)應(yīng)的內(nèi)容</div> </div> </div> <div class="panel panel-default"> <div class="panel-heading"> <h4 class="panel-title"><a data-toggle="collapse" data-parent="#accordion" href="#collapseTwo">標(biāo)題二</a></h4> </div> <div id="collapseTwo" class="panel-collapse collapse"> <div class="panel-body">標(biāo)題二對(duì)應(yīng)的內(nèi)容</div> </div> </div> <div class="panel panel-default"> <div class="panel-heading"> <h4 class="panel-title"><a data-toggle="collapse"data-parent="#accordion"href="#collapseThree">標(biāo)題三</a></h4> </div> <div id="collapseThree" class="panel-collapse collapse"> <div class="panel-body">標(biāo)題三對(duì)應(yīng)的內(nèi)容</div> </div> </div> </div> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
手風(fēng)琴–手風(fēng)琴結(jié)構(gòu)
手風(fēng)琴最關(guān)鍵的部分,就是每個(gè)標(biāo)題對(duì)應(yīng)有一個(gè)內(nèi)容,在Bootstrap框架中將這兩個(gè)部分組合起來稱為一個(gè)panel頁(yè)板,如右邊效果所示,他就有三個(gè)panel面板,將這三個(gè)面板組合在一起,就是一個(gè)面板組合 panel-group,也就是手風(fēng)琴的結(jié)構(gòu)。
簡(jiǎn)單點(diǎn)就是一個(gè)觸發(fā)器和一個(gè)折疊區(qū):
<button type="button" class="btn btn-danger" data-toggle="collapse" data-target="#demo">觸發(fā)器</button>
<div id="demo" class="collapse in">折疊區(qū)</div>
手風(fēng)琴–聲明式觸發(fā)手風(fēng)琴(二)
第三步,為了把標(biāo)題和內(nèi)容區(qū)捆綁在一起,可以通過錨鏈接的方法,把標(biāo)題區(qū)域和面板區(qū)連在一起:
第四步,控制面板內(nèi)容區(qū)是否可視。在Bootstrap框架中,如果你想讓內(nèi)容區(qū)域不可視,只需要在 panel-collapse 樣式上添加 collapse:
每個(gè)面板的內(nèi)容區(qū)都被隱藏起來了,變成不可視,但有時(shí)候希望默認(rèn)第一個(gè)面板內(nèi)容是可視的,
你只需要在collapse基礎(chǔ)上再追加 in 樣式:
手風(fēng)琴–聲明式觸發(fā)手風(fēng)琴(三)
第五步,激活手風(fēng)琴交互行為。要完成交互行為,需要在標(biāo)題鏈接中自定義兩個(gè)屬性,一個(gè)是data-toggle,并且取值為collapse;另一個(gè)是data-target,取值為各個(gè)面板內(nèi)容區(qū)的標(biāo)識(shí)符,比如說ID,
注意:在這個(gè)案例中不加入data-target=”#panel1”也可以,因?yàn)榍懊嬉呀?jīng)有了href=”#panel1”,但如是button按鈕作為觸發(fā)器就必須使用data-target=”#panel1”語(yǔ)句了。
第六步,定義data-parent屬性,實(shí)現(xiàn)點(diǎn)擊一個(gè)其中一個(gè)元素時(shí),關(guān)閉所有的折疊區(qū),再打開所單擊的區(qū)域(如果所單擊區(qū)域是展示的,則會(huì)關(guān)閉)。這個(gè)data-parent取值與手風(fēng)琴面板容器的標(biāo)識(shí)符相匹配,比如這個(gè)例子是指 #myAccordion
<div class="panel-group" id="myAccordion">
<div class="panel panel-accordion panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a href="#panel1" data-toggle="collapse" data-target="#panel1" data-parent="#myAccordion">標(biāo)題一</a>
</h4>
</div>
☑ 使用 panel 的 panel-title 做為觸元素,使用panel-body的父元素作為折疊區(qū);
☑ 使用一個(gè) panel-group 來包含多個(gè) panel,從而實(shí)現(xiàn)手風(fēng)琴效果;
☑ 每個(gè) panel 里的觸發(fā)元素都要指定data-parent屬性;
☑ data-parent 屬性的值對(duì)應(yīng) panel-group樣式元素的ID或者其他樣式標(biāo)識(shí)符;
☑ 觸發(fā)元素需要指定 data-toggle,并且值為 collapse;
☑ 觸發(fā)元素都要指定 data-target屬性;
☑ data-target屬性的值對(duì)應(yīng) panel-body 的父元素的ID或者其他樣式標(biāo)識(shí)符。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Bootstrap 手風(fēng)琴菜單的實(shí)現(xiàn)代碼
- 簡(jiǎn)潔實(shí)用的BootStrap jQuery手風(fēng)琴插件
- Angular.js與Bootstrap相結(jié)合實(shí)現(xiàn)手風(fēng)琴菜單代碼
- 全面解析Bootstrap手風(fēng)琴效果
- bootstrap折疊調(diào)用collapse()后data-parent不生效的快速解決辦法
- Bootstrap基本插件學(xué)習(xí)筆記之折疊(22)
- Bootstrap每天必學(xué)之折疊(Collapse)插件
- Bootstrap每天必學(xué)之折疊
- Bootstrap創(chuàng)建可折疊的組件
- bootstrap手風(fēng)琴折疊示例代碼分享
相關(guān)文章
JS解決移動(dòng)web開發(fā)手機(jī)輸入框彈出的問題
在移動(dòng)web開發(fā)中和pc端不同的是,手機(jī)的輸入是軟鍵盤,這樣就會(huì)有個(gè)問題,那就是當(dāng)有輸入的時(shí)候,鍵盤彈起來,整個(gè)頁(yè)面難免會(huì)發(fā)生變化。怎么解決這個(gè)問題呢?下面腳本之家小編給大家分享JS解決移動(dòng)web開發(fā)手機(jī)輸入框彈出的問題2017-03-03
JavaScript使用arcgis實(shí)現(xiàn)截圖截屏功能
這篇文章主要為大家詳細(xì)介紹了JavaScript如何使用arcgis實(shí)現(xiàn)截圖截屏功能,類似于qq截圖,文中的示例代碼講解詳細(xì),需要的可以參考一下2024-01-01
JavaScript實(shí)現(xiàn)圖片放大鏡效果
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)圖片放大鏡效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-06-06
實(shí)例解析ES6 Proxy使用場(chǎng)景介紹
本篇文章主要介紹了ES6 Proxy使用場(chǎng)景介紹,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-01
前端頁(yè)面適配之postcss-px-to-viewport實(shí)現(xiàn)步驟
postcss-px-to-viewport是一個(gè)PostCSS插件,它可以將px單位轉(zhuǎn)換為視口單位(vw、vh?或?vmin),這篇文章主要給大家介紹了關(guān)于前端頁(yè)面適配之postcss-px-to-viewport的實(shí)現(xiàn)步驟,需要的朋友可以參考下2024-03-03
使用canvas實(shí)現(xiàn)鯉魚躍龍門的動(dòng)畫效果
這篇文章主要給大家介紹了使用canvas實(shí)現(xiàn)鯉魚躍龍門的動(dòng)畫效果,文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以自己動(dòng)手嘗試一下2024-02-02
js利用iframe實(shí)現(xiàn)選項(xiàng)卡效果
這篇文章主要為大家詳細(xì)介紹了js利用iframe實(shí)現(xiàn)選項(xiàng)卡效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08
js學(xué)習(xí)總結(jié)之dom2級(jí)事件基礎(chǔ)知識(shí)詳解
這篇文章主要為大家詳細(xì)介紹了js學(xué)習(xí)總結(jié)之dom2級(jí)事件基礎(chǔ)知識(shí),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07

