Bootstrap每天必學(xué)之模態(tài)框(Modal)插件
本節(jié)課我們主要學(xué)習(xí)一下 Bootstrap 中的模態(tài)框插件, 這是一款交互式網(wǎng)站非常常見(jiàn)的彈窗功能插件。
更多關(guān)于Bootstrap模態(tài)框插件內(nèi)容請(qǐng)點(diǎn)擊專(zhuān)題《Bootstrap Modal使用教程》進(jìn)行學(xué)習(xí),希望大家喜歡,下面繼續(xù)
一.基本使用
使用模態(tài)框的彈窗組件需要三層 div 容器元素,分別為 modal(模態(tài)聲明層)、
dialog(窗口聲明層)、content(內(nèi)容層)。在內(nèi)容層里面,還有三層,分別為 header(頭部)、body(主體)、footer(注腳)。
//基本實(shí)例
<!-- 模態(tài)聲明,show 表示顯示 --> <div class="modal show" tabindex="-1"> <!-- 窗口聲明 --> <div class="modal-dialog"> <!-- 內(nèi)容聲明 --> <div class="modal-content"> <!-- 頭部 --> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"> <span>×</span> </button> <h4 class="modal-title">會(huì)員登錄</h4> </div> <!-- 主體 --> <div class="modal-body"> <p> 暫時(shí)無(wú)法登錄會(huì)員 </p> </div> <!-- 注腳 --> <div class="modal-footer"> <button type="button" class="btn btn-default"> 注冊(cè) </button> <button type="button" class="btn btn-primary"> 登錄 </button> </div> </div> </div> </div>
如果想讓模態(tài)框自動(dòng)隱藏,然后通過(guò)點(diǎn)擊按鈕彈窗,那么需要做如下操作。
//模態(tài)框去掉 show,增加一個(gè) id <div class="modal" id="myModal"> //點(diǎn)擊觸發(fā)模態(tài)框顯示 <button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal"> 點(diǎn)擊彈窗 </button> //彈窗的大小有三種,默認(rèn)情況下是正常,還有 lg(大)和 sm(小) <div class="modal-dialog modal-lg"> <div class="modal-dialog sm-lg"> //可設(shè)置淡入淡出效果 <div class="modal fade" id="myModal"> //在主體部分使用柵格系統(tǒng)中的流體 <!-- 主體 --> <div class="modal-body"> <div class="container-fluid"> <div class="row"> <div class="col-md-4"> 1 </div> <div class="col-md-4"> 1 </div> <div class="col-md-4"> 1 </div> </div> </div> </div>
二.用法說(shuō)明
基本使用介紹結(jié)束之后,我們就來(lái)看下插件的各種重要用法。所有的插件,都是基于JavaScript/jQuery 的。那么,就有四個(gè)要素:用法、參數(shù)、方法和事件。
1.用法
第一種:可以通過(guò) data 屬性
//data-toggle data-toggle="modal" data-target="#myModal"
data-toggle 表示觸發(fā)類(lèi)型
data-target 表示觸發(fā)的節(jié)點(diǎn)
如果不是使用<button>, 而是<a>, 其中 data-target 也可以使用 href="#myModal"
取代。當(dāng)然,我們建議使用 data-target。除了 data-toggle 和 data-target 兩個(gè)聲明屬性外,還有一些可以用選項(xiàng)。
2.參數(shù)
可以通過(guò)在 HTML 元素上設(shè)置 data-*的屬性聲明來(lái)控制效果。
//空白背景且點(diǎn)擊不關(guān)閉 data-backdrop="false" //按下 esc 不關(guān)閉 data-keyboard="false" //初始化隱藏,如果是按鈕點(diǎn)擊觸發(fā),第一次點(diǎn)擊則無(wú)法顯示,第二次顯示。 data-show="false" //加載一次 index.html 到容器內(nèi) href="index.html"
當(dāng)然,也可以在 JavaScript 直接設(shè)置。
//通過(guò) jQuery 方式聲明 $('#myModal').modal({ show : true, backdrop : false, keyboard : false, remote : 'index.html', });
3.方法
如果說(shuō),默認(rèn)不顯示彈窗,那么怎么才能通過(guò)點(diǎn)擊前后彈窗呢?
//點(diǎn)擊顯示彈窗 $('#btn').on('click', function() { $('#myModal').modal('show'); });
4.事件
模態(tài)框支持 4 種時(shí)間,分別對(duì)應(yīng)彈出前、彈出后、關(guān)閉前和關(guān)閉后。
$('#myModal').on('show.bs.modal', function() { alert('在 show 方法調(diào)用時(shí)立即觸發(fā)!'); }); $('#myModal').on('shown.bs.modal', function() { alert('在模態(tài)框顯示完畢后觸發(fā)!'); }); $('#myModal').on('hide.bs.modal', function() { alert('在 hide 方法調(diào)用時(shí)立即觸發(fā)!'); }); $('#myModal').on('hiden.bs.modal', function() { alert('在模態(tài)框顯示完畢后觸發(fā)!'); }); $('#myModal').on('loaded.bs.modal', function() { alert('遠(yuǎn)程數(shù)據(jù)加載完畢后觸發(fā)!'); });
本文系列教程整理到:Bootstrap基礎(chǔ)教程 專(zhuān)題中,歡迎點(diǎn)擊學(xué)習(xí)。
如果大家還想深入學(xué)習(xí),可以點(diǎn)擊這里進(jìn)行學(xué)習(xí),再為大家附3個(gè)精彩的專(zhuān)題:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。
- 頁(yè)面遮罩層,并且阻止頁(yè)面body滾動(dòng)。bootstrap模態(tài)框原理
- 淺析BootStrap中Modal(模態(tài)框)使用心得
- Bootstrap 模態(tài)框(Modal)帶參數(shù)傳值實(shí)例
- bootstrap模態(tài)框消失問(wèn)題的解決方法
- Bootstrap模態(tài)框(modal)垂直居中的實(shí)例代碼
- 在iframe中使bootstrap的模態(tài)框在父頁(yè)面彈出問(wèn)題
- bootstrap 模態(tài)框(modal)實(shí)現(xiàn)水平垂直居中顯示
- BootStrap 模態(tài)框?qū)崿F(xiàn)刷新網(wǎng)頁(yè)并關(guān)閉功能
- Bootstrap模態(tài)框禁用空白處點(diǎn)擊關(guān)閉
- Bootstrap實(shí)現(xiàn)模態(tài)框效果
相關(guān)文章
網(wǎng)站內(nèi)容禁止復(fù)制和粘貼、另存為的js代碼
這篇文章主要介紹了JS如何實(shí)現(xiàn)網(wǎng)站內(nèi)容如何實(shí)現(xiàn)禁止復(fù)制和粘貼、另存為,需要的朋友可以參考下2014-02-02使用js實(shí)現(xiàn)一個(gè)可編輯的select下拉列表
這篇文章主要介紹了使用js實(shí)現(xiàn)一個(gè)可編輯的select下拉列表,個(gè)人感覺(jué)還不錯(cuò),需要的朋友可以參考下2014-02-02javascript動(dòng)態(tài)向網(wǎng)頁(yè)中添加表格實(shí)現(xiàn)代碼
動(dòng)態(tài)向網(wǎng)頁(yè)中添加表格的方法有很多,本文為大家介紹下利用javascript是如何實(shí)現(xiàn)的2014-02-02JavaScript和CSS通過(guò)expression實(shí)現(xiàn)Table居中顯示
如何將表格居中的顯示使用一個(gè)叫expression的函數(shù),多數(shù)的瀏覽器都支持這個(gè)函數(shù),感興趣的朋友可以看一下具體的實(shí)現(xiàn)哈2013-06-06Javascript 中創(chuàng)建自定義對(duì)象的方法匯總
這篇文章主要匯總介紹了Javascript 中創(chuàng)建自定義對(duì)象的方法,需要的朋友可以參考下2014-12-12使用ajax的post同步執(zhí)行(實(shí)現(xiàn)方法)
下面小編就為大家分享一篇使用ajax的post同步執(zhí)行(實(shí)現(xiàn)方法),具有很好的參考價(jià)值,希望對(duì)大家有所幫助2017-12-12Web?Woker與主線(xiàn)程通信場(chǎng)景下對(duì)postMessage的簡(jiǎn)潔封裝詳解
這篇文章主要為大家介紹了Web?Woker與主線(xiàn)程通信場(chǎng)景下對(duì)postMessage的簡(jiǎn)潔封裝示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09