jQuery EasyUI 佈局插件 - Accordion 折疊面板

通過 $.fn.accordion.defaults 重寫默認的 defaults。
折疊面板(accordion)允許您提供多個面板(panel),同時顯示一個或多個面板(panel)。每個面板(panel)都有展開和折疊的內建支持。點擊面板(panel)頭部可展開或折疊面板(panel)主體。面板(panel)內容可通過 ajax 指定 'href' 屬性來加載。用戶可定義被選中的面板(panel)。如果為指定,則默認選中第一個面板(panel)。

依賴
- panel
用法
創建折疊面板(Accordion)
通過標記創建折疊面板(Accordion),添加 'easyui-accordion' class 到 <div> 標記。
<div id="aa" class="easyui-accordion" style="width:300px;height:200px;"> <div title="Title1" data-options="iconCls:'icon-save'" style="overflow:auto;padding:10px;"> <h3 style="color:#0099FF;">Accordion for jQuery</h3> <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p> </div> <div title="Title2" data-options="iconCls:'icon-reload',selected:true" style="padding:10px;"> content2 </div> <div title="Title3"> content3 </div> </div>
我們可以改變或重建折疊面板(Accordion)後,修改某些特性。
$('#aa').accordion({ animate:false });
刷新折疊面板(Accordion Panel)內容
調用 'getSelected' 方法來獲取當前面板(panel),然後我們可以調用面板(panel)的 'refresh' 方法來加載新內容。
var pp = $('#aa').accordion('getSelected'); // 獲取選中的面板(panel) if (pp){ pp.panel('refresh','new_content.php'); // 調用 'refresh' 方法加載新內容 }
容器選項
名稱 | 類型 | 描述 | 默認值 |
---|---|---|---|
width | number | 折疊面板(Accordion)容器的寬度。 | auto |
height | number | 折疊面板(Accordion)容器的高度。 | auto |
fit | boolean | 設置為 true,就使折疊面板(Accordion)容器的尺寸適應它的父容器。 | false |
border | boolean | 定義是否顯示邊框。 | true |
animate | boolean | 定義當展開或折疊面板(panel)時是否顯示動畫效果。 | true |
multiple | boolean | 設置為 true,則可同時展開多個面板(panel)。該屬性自版本 1.3.5 起可用。 | false |
selected | number | 初始化選中的面板(panel)索引。該屬性自版本 1.3.5 起可用。 | 0 |
面板(Panel)選項
折疊面板(Accordion)的面板(panel)選項繼承自面板(panel),下麵是附加的屬性:
名稱 | 類型 | 描述 | 默認值 |
---|---|---|---|
selected | boolean | 設置為 true 就展開面板(panel)。 | false |
collapsible | boolean | 定義是否顯示可折疊按鈕。如果設置為 false,將不能通過點擊來展開/折疊面板(panel)。 | true |
事件
名稱 | 參數 | 描述 |
---|---|---|
onSelect | title,index | 當面板(panel)被選中時觸發。 |
onUnselect | title,index | 當面板(panel)未被選中時觸發。該事件自版本 1.3.5 起可用。 |
onAdd | title,index | 當添加一個新面板(panel)時觸發。 |
onBeforeRemove | title,index | 當移除一個面板(panel)之前觸發,返回 false 就取消移除動作。 |
onRemove | title,index | 當移除一個面板(panel)時觸發。 |
方法
名稱 | 參數 | 描述 |
---|---|---|
options | none | 返回折疊面板(accordion)的選項。 |
panels | none | 獲取全部的面板(panel)。 |
resize | none | 調整折疊面板(accordion)的尺寸。 |
getSelected | none | 獲取第一個選中的面板(panel)。 |
getSelections | none | 過去所有選中的面板(panel)。該方法自版本 1.3.5 起可用。 |
getPanel | which | 獲取指定的面板(panel)。'which' 參數可以是面板(panel)的標題(title)或索引(index)。 |
getPanelIndex | panel | 獲取指定的面板(panel)索引。該方法自版本 1.3 起可用。 下麵的實例顯示如何獲取選中的面板(panel)索引。 var p = $('#aa').accordion('getSelected'); if (p){ var index = $('#aa').accordion('getPanelIndex', p); alert(index); } |
select | which | 選擇指定的面板(panel)。'which' 參數可以是面板(panel)的標題(title)或索引(index)。 |
unselect | which | 未選擇指定的面板(panel)。'which' 參數可以是面板(panel)的標題(title)或索引(index)。該方法自版本 1.3.5 起可用。 |
add | options | 添加一個新的面板(panel)。默認情況下,新添加的面板(panel)會被選中。如需添加一個未被選中的新面板(panel),請傳遞 'selected' 屬性,並將其設置為 false。 代碼實例: $('#aa').accordion('add', { title: 'New Title', content: 'New Content', selected: false }); |
remove | which | 移除指定的面板(panel)。'which' 參數可以是面板(panel)的標題(title)或索引(index)。 |
