點選彈出一個帶有半透明遮罩的居中視窗
現在比較流行的一種效果就是點選一個地方能夠彈出一個帶有遮罩的居中視窗,當然用處多種多樣的,下面就結合一個例項詳細介紹一下如何實現此效果,程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <head> <title>點選彈出居中視窗-螞蟻部落</title> <style type="text/css"> .Div_Scroll { position:fixed; margin:-10px; visibility:hidden; background-color:#808080; opacity:0.6; z-index:99; } .Div_Scroll_Content { position:relative; margin-top:20%; width:inherit; height:inherit; } .Div_AlertWindow { margin:auto; width:200px; height:100px; background-color:lightblue; border:5px solid #f00; } </style> <script type="text/javascript"> window.onload=function () { var alertWindow=$("alertParent"); var Sure=$("Sure"); var alertButton=$("alertButton"); alertWindow.style.width=window.screen.availWidth+"px"; alertWindow.style.height=window.screen.height+"px"; Sure.onclick=function() { alertWindow.style.visibility="hidden"; } alertButton.onclick=ShowAlert; } function ShowAlert() { var alertWindow=$("alertParent"); alertWindow.style.visibility="visible"; } $=function(id) { return document.getElementById(id); } </script> </head> <body> <div id="alertParent" class="Div_Scroll"> <div class="Div_Scroll_Content"> <div id="AlertWindow" class="Div_AlertWindow"> <input type="button" id="Sure" value="關閉視窗" /> </div> </div> </div> <div> <input id="alertButton" type="button" value="點選彈出視窗"/> </div> </body> </html>
以上程式碼實現了我們想要的效果,點選按鈕可以彈出一個視窗,並且帶有半透明的遮罩層,點選關閉按鈕可以關閉此彈出視窗,下面就詳細介紹一下次效果的實現過程。
一.實現原理:
在預設狀態下,全屏的遮罩層和彈出框是隱藏不可見的,當點選按鈕的時候遮罩層和彈出框都會出現,這樣就形成了帶有半透明的遮罩層彈出視窗效果,當點選彈出層的關閉按鈕的時候,然後再隱藏彈出框和這這層。
二.程式碼註釋:
說明:本註釋為了瀏覽者閱讀習慣不是按照程式碼行先後順序。
1.$=function(id){},宣告一個函式,此函式類似於jquery的id選擇器,能夠返回指定id屬性值的物件。
2.window.onload=function(){},文件載入完畢後再去執行函式中的程式碼,可以防止無法獲取物件的錯誤。
3.var alertWindow=$("alertParent"),獲取id屬性值為alertParent元素物件。
4.var Sure=$("Sure"),獲取id屬性值為Sure的物件。
5.var alertButton=$("alertButton"),獲取屬性值為alertButton物件。
6.alertWindow.style.width=window.screen.availWidth+"px",設定遮罩層的寬度為顯示器的可用寬度。
7.alertWindow.style.height=window.screen.height+"px",設定遮罩層的高度為顯示器的可用高度。
8.Sure.onclick=function(){},為關閉按鈕註冊事件處理函式。
9.alertWindow.style.visibility="hidden",將彈出框設定為隱藏。
10.alertButton.onclick=ShowAlert,為alertButton按鈕註冊事件處理函式。
11.function ShowAlert() {},用於顯示遮罩層。
特別說明:
此程式碼有所缺陷,那就是彈出視窗是遮罩層的子元素,這個時候設定遮罩層的透明度會影響到彈出視窗的透明度,不過可以簡單的改進一下就可以了,方式可以參閱如何設定div的透明度但是其中的文字不透明一章節。
相關文章
- 點選彈出帶有遮罩的視窗效果遮罩
- 點選彈出居中帶有透明遮罩層視窗遮罩
- jQuery彈出帶有遮罩視窗效果jQuery遮罩
- 帶有半透明遮罩的彈出層例項程式碼遮罩
- 帶有半透明遮罩層可關閉視窗遮罩
- 點選彈出水平垂直居中視窗程式碼例項
- jquery實現的彈出居中視窗效果jQuery
- 帶有半透明背景居中彈出層詳解
- 帶有半透明效果的遮罩層程式碼例項遮罩
- 點選彈出半透明層程式碼例項
- javascript點選彈出可以關閉帶有灰色背景彈出層JavaScript
- 帶有背景鎖屏遮罩的彈出層程式碼例項遮罩
- 實現一個帶有動效的 React 彈窗元件React元件
- 點選彈出帶有灰色背景使用者登入視窗程式碼例項
- 前端:兩種實現帶背景遮罩的彈窗寫法前端遮罩
- 彈出一個全屏灰黑色透明遮罩效果遮罩
- 點選按鈕彈出一個居中div
- jQuery實現的彈出垂直水平居中視窗效果程式碼例項jQuery
- jQuery實現的點選彈出登陸視窗效果jQuery
- js實現的點選彈出確認視窗程式碼JS
- GridView滑鼠經過感知以及點選行彈出視窗View
- 點選連結<a>彈出確認視窗程式碼例項
- 移動端點選彈出提示視窗程式碼例項
- 表格單元格點選操作(彈窗)
- 我第一個做好的彈出選單
- javascript自帶的彈出輸出視窗程式碼例項JavaScript
- 以OpacityMask設計半透明遮罩遮罩
- ArcGIS API for Silverlight開發中滑鼠左鍵點選地圖上的點彈出視窗及右鍵點選彈出快捷選單的實現程式碼API地圖
- javascript自帶彈出視窗簡單介紹JavaScript
- 點選連結a彈出一個確認框例項程式碼
- 彈出視窗
- 點選任意View彈出PickerView
- 語音交友app開發,點選按鈕出現彈窗的實現方式APP
- Android中視窗的建立過程Android
- 直播系統程式碼,點選選擇欄,彈出各個選項
- Prism 彈出視窗
- emacs視窗半透明Mac
- 專案分享八:基於按鈕點選事件的彈窗事件