Bootstrap編寫(xiě)一個(gè)在當(dāng)前網(wǎng)頁(yè)彈出可關(guān)閉的對(duì)話框 非彈窗
使用彈窗在網(wǎng)頁(yè)中顯示短信息還行,雖然不那么地友好。然而,彈窗對(duì)于如同網(wǎng)站服務(wù)條款的長(zhǎng)信息就無(wú)能為力的了。這是需要使用一個(gè)叫模態(tài)框modal的東西,并且在模態(tài)框里面嵌入一個(gè)多行文本框textarea。
這個(gè)東西,如果要手工寫(xiě)JavaScript代碼就太難做了,但是使用Bootstrap來(lái)編寫(xiě)就簡(jiǎn)單起來(lái)。
一、基本目標(biāo)
有一個(gè)網(wǎng)頁(yè),網(wǎng)頁(yè)上面有一個(gè)超級(jí)鏈接,一個(gè)按鈕:
點(diǎn)擊他們都會(huì)打開(kāi)一個(gè)如下所示的模態(tài)框,這個(gè)模態(tài)框,點(diǎn)擊右上角的X按鈕與下方的確定都會(huì)關(guān)閉。
二、制作過(guò)程
1.因?yàn)樾枰褂肂ootstrap,所以先在官網(wǎng)(點(diǎn)擊打開(kāi)鏈接)下載組件即可,用于生產(chǎn)環(huán)境的Bootstrap版本(點(diǎn)擊打開(kāi)鏈接),Bootstrap3對(duì)2并不兼容,建議直接根據(jù)其開(kāi)發(fā)文檔使用Bootstrap3。本文也是根據(jù)Bootstrap3制作。同時(shí),Bootstrap3所提供的JavaScript效果需要到j(luò)Query1.11(點(diǎn)擊打開(kāi)鏈接)支持,可以到j(luò)Query官網(wǎng)中下載兼容舊瀏覽器IE6的jQuery1.11(點(diǎn)擊打開(kāi)鏈接),而不是不兼容舊瀏覽器IE6的jQuery2。下載完之后,配置好站點(diǎn)目錄。把Bootstrap3直接解壓到站點(diǎn)目錄,而把jquery-1.11.1.js放到j(luò)s目錄,也就是與bootstrap.js同一目錄,站點(diǎn)文件夾的結(jié)構(gòu)大致如下:
2.本網(wǎng)頁(yè)編碼如下,下面一個(gè)片段一個(gè)片段進(jìn)行分析:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>模態(tài)框</title> <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no"> <link href="css/bootstrap.css" rel="stylesheet" media="screen"> <script type="text/javascript" src="js/jquery-1.11.1.js"></script> <script type="text/javascript" src="js/bootstrap.js"></script> </head> <body> <p> <a data-toggle="modal" data-target="#myModal">服務(wù)協(xié)議</a> </p> <p> <button type="button" class="btn btn-danger" data-toggle="modal" data-target="#myModal"> 點(diǎn)擊此閱讀服務(wù)協(xié)議 </button> </p> <div class="modal fade" id="myModal" role="dialog"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal"> <span>×</span> </button> <h4 class="modal-title" id="myModalLabel"> 服務(wù)協(xié)議 </h4> </div> <div class="modal-body"> <p align="center"> <textarea class="form-control" rows=3 readonly="true" /> 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 </textarea> </p> </div> <div class="modal-footer"> <p align="center"> <button type="button" class="btn btn-default" data-dismiss="modal"> 確定 </button> </p> </div> </div> </div> </div> </body> </html>
(1)<head>部分
<head> <!--頁(yè)面編碼--> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>模態(tài)框</title> <!--要求本網(wǎng)頁(yè)自動(dòng)適應(yīng)PC、平板、手機(jī)等設(shè)備的屏幕--> <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no"> <!--本例需要三個(gè)外部插件所支持--> <link href="css/bootstrap.css" rel="stylesheet" media="screen"> <script type="text/javascript" src="js/jquery-1.11.1.js"></script> <script type="text/javascript" src="js/bootstrap.js"></script> </head>
(2)最初在網(wǎng)頁(yè)所呈現(xiàn)的鏈接與按鈕
<p> <!--data-toggle="modal" data-target="#myModal"要求打開(kāi)的myModal的模態(tài)框--> <a data-toggle="modal" data-target="#myModal">服務(wù)協(xié)議</a> </p> <p> <!--class="btn btn-danger"是按鈕在Bootstrap的樣式。--> <button type="button" class="btn btn-danger" data-toggle="modal" data-target="#myModal"> 點(diǎn)擊此閱讀服務(wù)協(xié)議 </button> </p>
(3)模態(tài)框部分
模態(tài)框的基本如下:
因此也就有了如下代碼:
<!--class="modal fade"是要求模態(tài)框以動(dòng)畫(huà)效果fade打開(kāi),class="modal"也行,但打開(kāi)得十分唐突。id="myModal"與上面的超級(jí)鏈接、按鈕相呼應(yīng)--> <div class="modal fade" id="myModal" role="dialog"> <div class="modal-dialog"> <!--必須在modal-content之后才能進(jìn)行模態(tài)框的布局。--> <div class="modal-content"> <div class="modal-header"> <!--這是模態(tài)框的標(biāo)題部分, ×加分號(hào) 為×的轉(zhuǎn)移字符,實(shí)質(zhì)是一個(gè)關(guān)閉按鈕--> <button type="button" class="close" data-dismiss="modal"> <span>×</span> </button> <!--這是模態(tài)框的標(biāo)題--> <h4 class="modal-title" id="myModalLabel"> 服務(wù)協(xié)議 </h4> </div> <div class="modal-body"> <!--這是模態(tài)框的主體部分,內(nèi)嵌一個(gè)行數(shù)為3的只讀文本框,文本框在模態(tài)框主體部分居中,不用文本框也可以,但內(nèi)容會(huì)一次性呈現(xiàn)給用戶,那還不如直接彈窗算了?--> <p align="center"> <textarea class="form-control" rows=3 readonly="true" /> 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 本協(xié)議服務(wù)條款具有法律效力。 </textarea> </p> </div> <div class="modal-footer"> <!--這是模態(tài)框的尾部,就放一個(gè)居中的確定按鈕--> <p align="center"> <button type="button" class="btn btn-default" data-dismiss="modal"> 確定 </button> </p> </div> </div> </div> </div>
如果大家還想深入學(xué)習(xí),可以點(diǎn)擊這里進(jìn)行學(xué)習(xí),再為大家附3個(gè)精彩的專題:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 在iframe中使bootstrap的模態(tài)框在父頁(yè)面彈出問(wèn)題
- Bootstrap彈出框之自定義懸??驑?biāo)題、內(nèi)容和樣式示例代碼
- Bootstrap的popover(彈出框)2秒后定時(shí)消失的實(shí)現(xiàn)代碼
- 擴(kuò)展bootstrap的modal模態(tài)框-動(dòng)態(tài)添加modal框-彈出多個(gè)modal框
- Bootstrap實(shí)現(xiàn)提示框和彈出框效果
- Bootstrap實(shí)現(xiàn)帶動(dòng)畫(huà)過(guò)渡的彈出框
- Bootstrap彈出框(modal)垂直居中的問(wèn)題及解決方案詳解
- 關(guān)于Bootstrap彈出框無(wú)法調(diào)用問(wèn)題的解決辦法
- JS組件Bootstrap實(shí)現(xiàn)彈出框和提示框效果代碼
- bootstrap實(shí)現(xiàn)點(diǎn)擊刪除按鈕彈出確認(rèn)框的實(shí)例代碼
相關(guān)文章
原生JavaScript實(shí)現(xiàn)Ajax異步請(qǐng)求
ajax現(xiàn)在是一種非常流行的技術(shù),現(xiàn)在雖然可以利用JQuery或者一些第三方插件甚至微軟提供的一些控件可以方面的實(shí)現(xiàn)ajax功能,但是明白其原理也是非常重要的,下面是來(lái)使用純javascript實(shí)現(xiàn)獲取服務(wù)器端的功能來(lái)展示如何使用純javascript實(shí)現(xiàn)ajax功能,以弄清其原理.2017-11-11uniapp小程序開(kāi)發(fā)組件封裝之自定義輪播圖效果
這篇文章主要介紹了uniapp小程序開(kāi)發(fā)組件封裝之自定義輪播圖,本文主要展示小程序端封裝輪播圖組件,使用的是uniapp進(jìn)行的開(kāi)發(fā),主要使用的是uniapp官網(wǎng)提供的swiper組件,需要的朋友可以參考下2023-02-02JS與jQuery遍歷Table所有單元格內(nèi)容的方法
這篇文章主要介紹了JS與jQuery遍歷Table所有單元格內(nèi)容的方法,結(jié)合實(shí)例形式分別描述了JavaScript與jQuery實(shí)現(xiàn)遍歷table單元格的實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-12-12JavaScript?中從?URL?獲取數(shù)據(jù)的方法
這篇文章主要介紹了在?JavaScript?中從?URL?獲取數(shù)據(jù),我們使用了open函數(shù),將請(qǐng)求方法類型和URL作為參數(shù)傳遞,并調(diào)用XMLHttpRequest()的send()方法,結(jié)合示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-05-05淺談JavaScript中面向?qū)ο蟮牡纳羁截惡蜏\拷貝
下面小編就為大家?guī)?lái)一篇淺談JavaScript中面向?qū)ο蟮牡纳羁截惡蜏\拷貝。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08相關(guān)JavaScript在覽器中實(shí)現(xiàn)可視化的四種方式
這篇文章主要介紹了相關(guān)JavaScript在覽器中實(shí)現(xiàn)可視化的四種方式,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-09-09如何使用webpack打包一個(gè)庫(kù)library的方法步驟
這篇文章主要介紹了如何使用webpack打包一個(gè)庫(kù)library的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12