jQuery Mobile 面板
jQuery Mobile 中的面板會在螢幕的左側向右側劃出。
通過向指定 id 的 <div> 元素新增 data-role="panel" 屬性來建立面板。
在 <div> 中新增 HTML 標記來顯示你的面板內容:
<div data-role="panel" id="myPanel"> <h2>面板標題..</h2> <p>文字內容..</p> </div>
注意: panel 標記必須置於頭部、內容、底部組成的頁面之前或之後。
要訪問面板,需要建立一個指向面板 <div> id 的連結,點選該連結即可打開面板:
<a href="https://www.itread01.com/jquerymobile/#myPanel" class="ui-btn ui-btn-inline">打開面板</a>
簡單的面板例項
例項
<div data-role="page" id="pageone">
<div data-role="panel" id="myPanel">
<h2>面板頭部..</h2>
<p>面板內容..</p>
</div>
<div data-role="header">
<h1>標準頁面頭部</h1>
</div>
<div data-role="main" class="ui-content">
<p>點選下面按鈕打開面板。</p>
<a href=https://www.itread01.com/jquerymobile/"#myPanel" class="ui-btn ui-btn-inline">打開面板</a>
</div>
<div data-role="footer">
<h1>底部文字</h1>
</div>
</div>
<div data-role="panel" id="myPanel">
<h2>面板頭部..</h2>
<p>面板內容..</p>
</div>
<div data-role="header">
<h1>標準頁面頭部</h1>
</div>
<div data-role="main" class="ui-content">
<p>點選下面按鈕打開面板。</p>
<a href=https://www.itread01.com/jquerymobile/"#myPanel" class="ui-btn ui-btn-inline">打開面板</a>
</div>
<div data-role="footer">
<h1>底部文字</h1>
</div>
</div>
嘗試一下 ?
關閉面板
你可以通過點選面板外部區域或按下 Esc 鍵或滑動來關閉面板。你可以通過使用 data-* 屬性來禁用滑動和點選來關閉面板:
屬性 | 值 | 描述 | 例項 |
---|---|---|---|
data-dismissible | true | false | 指定面板是否可以通過點選面板外部區域來關閉。 | 嘗試一下 |
data-swipe-close | true | false | 指定是否可以通過滑動來關閉。 | 嘗試一下 |
你可以使用按鈕來關閉面板:僅需要在面板的 <div> 中新增 data-rel="close" 屬性。 從效能上考慮,我們需要鍵關閉連結的 href 屬性指向頁面的 ID 。
例項
<div
data-role="panel" id="myPanel">
<h2>面板頭部..</h2>
<p>面板中的一些文字內容..</p>
<a href=https://www.itread01.com/jquerymobile/"#pageone" data-rel="close" class="ui-btn ui-btn-inline">關閉面板</a>
</div>
<h2>面板頭部..</h2>
<p>面板中的一些文字內容..</p>
<a href=https://www.itread01.com/jquerymobile/"#pageone" data-rel="close" class="ui-btn ui-btn-inline">關閉面板</a>
</div>
嘗試一下 ?
面板展示
你可以通過使用 data-display 屬性來控制面板的展示方式:
屬性值 | 描述 |
---|---|
data-display="overlay" | 在內容上顯示面板 |
data-display="push" | 是同時"推動"面板和頁面。 |
data-display="reveal" | 預設值,將頁面像幻燈片一樣從螢幕劃出,將面板顯示出來 |
例項
<div data-role="panel" id="overlayPanel" data-display="overlay">
<div data-role="panel" id="revealPanel" data-display="reveal">
<div data-role="panel" id="pushPanel" data-display="push">
<div data-role="panel" id="revealPanel" data-display="reveal">
<div data-role="panel" id="pushPanel" data-display="push">
嘗試一下 ?
面板定位
預設情況下,面板會顯示在螢幕的左側。如果想讓面板出現在螢幕的右側,可以指定 data-position="right" 屬性。
例項
<div
data-role="panel" id="myPanel"
data-position="right">
嘗試一下 ?
你可以指定面板的內容根據頁面滾動而滾動。預設情況下面板是隨著頁面一起滾動的(但是面板的內容仍然位於頁面頂部)。如果你需要實現面板內容固定不隨頁面滾動而滾動,可以在面板新增 the data-position-fixed="true" 屬性:
例項
<div
data-role="panel" id="myPanel"
data-position-fixed="true">
嘗試一下 ?