點選彈出居中使用者登入框效果
分享一段程式碼例項,它結合JavaScript實現了點選按鈕彈出使用者登入介面效果。
介面帶有半透明層,並且點選關閉按鈕可以關閉層。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> *{ margin:0; padding:0; font-size:12px; } #content { width:200px; margin:0px auto; text-align:center } #content a { font-size:30px; color:#369; font-weight:700; } #thelogin { border:1px solid #369; width:300px; height:150px; background:#e2ecf5; z-index:1000; position:absolute; display:none; } #thelogin h4 { height:20px; background:#369; color:#fff; padding:5px 0 0 5px; } #thelogin h4 span{float:left;} #thelogin h4 span#close { margin-left:210px; font-weight:500; cursor:pointer; } #thelogin p {padding:12px 0 0 30px;} #thelogin p input {width:120px;margin-left:20px;} #thelogin p input.myinp {border:1px solid #ccc;height:16px;} #thelogin p input.sub {width:60px;margin-left:30px;} </style> <script type="text/javascript"> window.onload=function() { var thelogin=document.getElementById("thelogin"); var reg=document.getElementById("bt"); var mClose=document.getElementById("close"); reg.onclick=function() { thelogin.style.display="block"; thelogin.style.position="absolute"; thelogin.style.top="50%"; thelogin.style.left="50%"; thelogin.style.marginTop="-75px"; thelogin.style.marginLeft="-150px"; mybg=document.createElement("div"); mybg.setAttribute("id","mybg"); mybg.style.background="#000"; mybg.style.width="100%"; mybg.style.height="100%"; mybg.style.position="absolute"; mybg.style.top="0"; mybg.style.left="0"; mybg.style.zIndex="500"; mybg.style.opacity="0.3"; mybg.style.filter="Alpha(opacity=30)"; document.body.appendChild(mybg); } mClose.onclick=function() { thelogin.style.display="none"; mybg.style.display="none"; } } </script> </head> <body> <div id="content"><button id="bt">點選顯示登陸框</button></div> <div id="thelogin"> <h4><span>現在註冊</span><span id="close">關閉</span></h4> <p><label>使用者名稱</label><input type="text" class="myinp" /></p> <p><label>密 碼</label><input type="password" class="myinp" /></p> <p> <input type="submit" value="註冊" class="sub" /> <input type="reset" value="重置" class="sub" /> </p> </div> </body> </html>
一.實現原理:
預設狀態下,登入框處於隱藏狀態,當點選登入按鈕會將其設定為顯示狀態,且垂直水平居中對齊;登入框的z-index屬性值設定為1000,它的作用後面會介紹。同時建立一個div,採用絕對定位,尺寸為全屏,z-index屬性值為500,比登入視窗要小,這樣登入視窗就會位於它的上面。
二.程式碼註釋:
(1).window.onload=function(){},文件完全載入完成再去執行函式中的程式碼。
(2).var thelogin=document.getElementById("thelogin"),獲取id為thelogin的元素。
(3).var reg=document.getElementById("bt"),獲取id為bt的元素。
(4).var mClose=document.getElementById("close"),獲取id為cloas的元素。
(5).reg.onclick=function(){},為reg元素繫結點選事件處理物件。
(6).thelogin.style.display="block",將thelogin元素設定為顯示。
(7).thelogin.style.position="absolute",將thelogin元素設定為絕對定位。
(8).thelogin.style.top="50%",將thelogin元素的top屬性值設定為50%。
(9).thelogin.style.left="50%",將thelogin元素的left屬性值設定為50%。
(10).thelogin.style.marginTop="-75px",在top屬性值50%的基礎上再上移75px,實現垂直居中對齊。
(11).thelogin.style.marginLeft="-150px",在left屬性值50%的基礎上再左移75px,實現水平居中對齊。
(12).mybg=document.createElement("div"),用於建立一個div元素。
(13).mybg.setAttribute("id","mybg"),將div的id屬性值設定為mybg。
(14).mybg.style.background="#000",將div的背景顏色設定為#000。
(15).mybg.style.width="100%"和mybg.style.height="100%",將div設定為全屏。
(16).mybg.style.position="absolute",將div設定為絕對定位。
(17).mybg.style.top="0",將div的top屬性值設定為0.
(18).mybg.style.left="0",將div的left屬性值設定為0.
(19).mybg.style.zIndex="500",將div的z-index屬性值設定為500.
(20).ybg.style.opacity="0.3"和mybg.style.filter="Alpha(opacity=30),設定div透明度。
(21).document.body.appendChild(mybg),為body新增建立的div。
(22).mClose.onclick=function(){},mClose繫結點選事件處理函式,點選此按鈕,登陸框和背景隱藏。
三.相關閱讀:
(1).document.getElementById()參閱document.getElementById()一章節。
(2).opacity參閱CSS3 opacity一章節。
(3).appendChild()參閱JavaScript appendChild()一章節。
(4).createElement()參閱document.createElement()一章節。
(5).絕對定位參閱CSS position:absolute 絕對定位一章節。
(6).z-index參閱CSS z-index屬性一章節。
相關文章
- 點選彈出居中登陸框
- 登入介面居中效果
- JavaScript點選按鈕彈出層效果JavaScript
- 登入框設計點
- 登入頁Activity從下向上的彈出效果實現
- 去除 bootstrap 彈出框背景變暗的效果boot
- 點選刪除按鈕彈出是否刪除提示框
- element ui el-time-select 在點選常規輸入框後觸發彈出UI
- 滑鼠點選區域外 彈框隱藏
- <span>小程式授權登入彈框</span>
- 短視訊平臺開發,點選輸入框時自動彈出軟鍵盤
- windows使用sourceTree克隆個人私有github,一直彈出登入框?WindowsGithub
- 短視訊商城系統,系統提示框、確認框、點選空白關閉彈出框
- 短視訊系統原始碼,點選選擇框,底部彈出可以選擇的選項原始碼
- Layui Confirm彈出框連續點選按鈕會觸發多次事件UI事件
- JavaScript文字框獲取焦點彈出tipsJavaScript
- 解決Windows安全性登入彈框的問題Windows
- 點選底部input輸入框,彈出的軟鍵盤擋住input(蘋果手機使用第三蘋果
- Flutter | 超實用簡單選單彈出框 PopupMenuButtonFlutter
- 各種高效穩定的彈框效果
- 小程式底部彈框 類似picker效果
- 微信小程式授權登入以及使用者資訊相關介面調整導致授權框不彈出微信小程式
- 【qml】一個圖片hover彈出滑框說明資訊效果
- 直播軟體原始碼,選項提供多選專案,彈出多選框原始碼
- 金蝶雲星空——過濾介面文字框彈出選單介面
- jQuery點選小圖彈出大圖jQuery
- TextView自定義輕鬆實現下劃線、點選彈框TextView
- sweetalert 彈出框瞬間消失
- 輸入框跟隨鍵盤彈出/隱藏移動
- 直播app原始碼,使用者首次登入時彈出左右滑動導航頁APP原始碼
- Qt 讓彈出的視窗居中顯示QT
- Winform在主窗體載入前彈出登入窗體ORM
- jquery連線html頁面做一個彈出框輸入jQueryHTML
- 如何不使用js實現滑鼠hover彈出選單效果JS
- 彈性效果網頁右側浮動框詳解網頁
- Winfrom中怎樣可以做到這樣的彈框效果
- 彈框
- 直播商城原始碼,AlertDialog.Builder 設定點選不關閉彈框原始碼UI