mdui.mutation() metódust)Material Design tervezési irányelvek: Komponensek – Összecsukható panel
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">
<div class="mdui-panel-item-title">Trip name</div>
<div class="mdui-panel-item-summary">Carribean cruise</div>
<i class="mdui-panel-item-arrow mdui-icon material-icons">keyboard_arrow_down</i>
</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<div class="mdui-panel-item-actions">
<button class="mdui-btn mdui-ripple" mdui-panel-item-close>cancel</button>
<button class="mdui-btn mdui-ripple">save</button>
</div>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">
<div class="mdui-panel-item-title">Location</div>
<i class="mdui-panel-item-arrow mdui-icon material-icons">keyboard_arrow_down</i>
</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<div class="mdui-panel-item-actions">
<button class="mdui-btn mdui-ripple" mdui-panel-item-close>cancel</button>
<button class="mdui-btn mdui-ripple">save</button>
</div>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">
<div class="mdui-panel-item-title">Start and end dates</div>
<div class="mdui-panel-item-summary">Start date: Feb 29, 2016</div>
<div class="mdui-panel-item-summary">End date: Not set</div>
<i class="mdui-panel-item-arrow mdui-icon material-icons">keyboard_arrow_down</i>
</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<div class="mdui-panel-item-actions">
<button class="mdui-btn mdui-ripple" mdui-panel-item-close>cancel</button>
<button class="mdui-btn mdui-ripple">save</button>
</div>
</div>
</div>
</div>A fenti példában szereplő elemek egy része nem kötelező, az alábbi példa csak a szükséges HTML elemeket tartalmazza.
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div>Adja hozzá a .mdui-panel-item-open osztályt a <div class="mdui-panel-item"></div> elemhez, hogy az adott panelelem alapértelmezés szerint nyitott legyen.
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item mdui-panel-item-open">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div>Adja hozzá a .mdui-panel-gapless osztályt a <div class="mdui-panel"></div> elemhez, hogy eltávolítsa a nyitott panel és a többi panel közötti térközt.
<div class="mdui-panel mdui-panel-gapless" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div>Adja hozzá a .mdui-panel-popout osztályt a <div class="mdui-panel"></div> elemhez, hogy a nyitott panel kiugró hatással bírjon.
<div class="mdui-panel mdui-panel-popout" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div><div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<!-- Első beágyazott összecsukható panel -->
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<!-- Második beágyazott összecsukható panel -->
<div class="mdui-panel" mdui-panel>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
</div>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
</div>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div>Ezzel a módszerrel nem kell JavaScript kódot írni. Csak adja hozzá az mdui-panel="options" attribútumot az <div class="mdui-panel"></div> elemhez a bővítmény aktiválásához.
Ha az összetevő dinamikusan jön létre, az inicializáláshoz meg kell hívni az mdui.mutation() metódust.
<div class="mdui-panel" mdui-panel="{accordion: true}">
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">First</div>
<div class="mdui-panel-item-body">
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
<p>First content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Second</div>
<div class="mdui-panel-item-body">
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
<p>Second content</p>
</div>
</div>
<div class="mdui-panel-item">
<div class="mdui-panel-item-header">Third</div>
<div class="mdui-panel-item-body">
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
<p>Third content</p>
</div>
</div>
</div>Az összecsukható panelen belüli elemekhez attribútumok adhatók az események kötéséhez, amelyek JavaScript hívásakor is használhatók.
| Attribútum | Leírás |
|---|---|
mdui-panel-item-close | Az elemre kattintás kiváltja a close.mdui.panel eseményt, és bezárja az elemet tartalmazó panelelemet. |
Összetevő példányosítása:
// A selector a .mdui-panel elem CSS-választója vagy DOM-eleme
// Az options a bővítmény paraméterei, lásd az alábbi paraméterlistát
var inst = new mdui.Panel(selector, options);| Paraméter neve | Típus | Alapértelmezett | Leírás |
|---|---|---|---|
accordion | boolean | false | Harmonika effektus engedélyezése.
|
| Metódus neve | Leírás |
|---|---|
open(item) | Panelelem megnyitása.
|
close(item) | Panelelem bezárása.
|
toggle(item) | Panelelem állapotának váltása.
|
openAll() | Minden panelelem megnyitása. Ez a metódus csak akkor működik, ha az accordion értéke false. |
closeAll() | Minden panelelem bezárása. |
| Esemény neve | Leírás | Célpont | Paraméterek |
|---|---|---|---|
open.mdui.panel | Az esemény akkor váltódik ki, amikor a panelelem nyitási animációja elkezdődik. | <div class="mdui-panel-item"></div> | event._detail.inst: Példány |
opened.mdui.panel | Az esemény akkor váltódik ki, amikor a panelelem nyitási animációja befejeződik. | ||
close.mdui.panel | Az esemény akkor váltódik ki, amikor a panelelem zárási animációja elkezdődik. | ||
closed.mdui.panel | Az esemény akkor váltódik ki, amikor a panelelem zárási animációja befejeződik. |
| Osztálynév | Leírás |
|---|---|
.mdui-panel | Összecsukható panel meghatározása. |
.mdui-panel-gapless | A nyitott panel és a többi panel közötti térköz eltávolítása. |
.mdui-panel-popout | Kiugró hatás biztosítása a nyitott panelnek. |
.mdui-panel-item | Összecsukható panel egy elemének meghatározása. |
.mdui-panel-item-open | A panelelem alapértelmezés szerint nyitottá tétele. |
.mdui-panel-item-header | A panelelem fejlécének meghatározása. |
.mdui-panel-item-title | A panelelem fejlécében lévő cím meghatározása. |
.mdui-panel-item-summary | A panelelem fejlécében lévő összegzés meghatározása. |
.mdui-panel-item-arrow | A panelelem kibontási/összecsukási ikonjának meghatározása. |
.mdui-panel-item-body | A panelelem tartalmának meghatározása. |
.mdui-panel-item-actions | A panelelem műveleti sávjának meghatározása. |