帶有半透明效果的遮罩層程式碼例項
本章節分享一段程式碼例項,它實現了點選按鈕彈出帶有半透明遮罩層的效果。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style> * { margin:0px; padding:0px; } .box { position: absolute; width: 600px; left: 50%; height: auto; z-index: 100; background-color: #fff; border: 1px #ddd solid; padding: 1px; } .box h2 { height: 25px; font-size: 14px; background-color: #aaa; position: relative; padding-left: 10px; line-height: 25px; color: #fff; } .box h2 a { position: absolute; right: 5px; font-size: 12px; color: #fff; } .box .list { padding: 10px; } .box .list li { height: 24px; line-height: 24px; list-style:none } .box .list li span { margin: 0 5px 0 0; font-family: "宋體"; font-size: 12px; font-weight: 400; color: #ddd; } .showbtn { font: bold 24px '微軟雅黑'; } #bg { background-color: #000; position: absolute; z-index: 99; left: 0; top: 0; display: none; width: 100%; height: 100%; opacity: 0.5; filter: alpha(opacity=50); } </style> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script> <script> $(function () { $(".showbtn").click(function () { $("#bg").css({ display: "block", height: $(document).height() }); var $box = $('.box'); $box.css({ //設定彈出層距離左邊的位置 left: ($("body").width() - $box.width()) / 2 - 2 + "px", //設定彈出層距離上面的位置 top: ($(window).height() - $box.height()) / 2 + $(window).scrollTop() + "px", display: "block" }); }); //點選關閉按鈕的時候,遮罩層關閉 $(".close").click(function () { $("#bg,.box").css("display", "none"); }); }); </script> </head> <body> <p class="showbtn"><a href="javascript:void(0);">顯示遮罩層</a></p> <div id="bg"></div> <div class="box" style="display:none"> <h2><a href="#" class="close">關閉</a></h2> <div class="list"> <ul> <li>螞蟻部落一</li> <li>螞蟻部落二</li> <li>螞蟻部落三</li> </ul> </div> </div> </body> </html>
上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。
一.程式碼註釋:
(1).$(function () {}),當文件結構完全載入再去執行函式中的程式碼。
(2).$(".showbtn").click(function () {}),為彈出遮罩層按鈕註冊click事件處理函式。
(3).$("#bg").css({
display: "block", height: $(document).height()
}),顯示遮罩層。
(4).var $box = $('.box'),獲取彈出層元素物件。
(5).$box.css({
//設定彈出層距離左邊的位置
left: ($("body").width() - $box.width()) / 2 - 2 + "px",
//設定彈出層距離上面的位置
top: ($(window).height() - $box.height()) / 2 + $(window).scrollTop() + "px",
display: "block"
});
上面的程式碼設定彈出層在頁面中的位置,也就是left和top屬性值。
left: ($("body").width() - $box.width()) / 2 - 2 + "px"用來設定水平居中,之所以減去二,因為有邊框和外邊距。
top: ($(window).height() - $box.height()) / 2 + $(window).scrollTop() + "px",用來設定彈出層在可取垂直居中。
(6).$(".close").click(function () {
$("#bg,.box").css("display", "none");
}),點選關閉按鈕可以隱藏彈出層和遮罩層。
二.相關閱讀:
(1).css()方法可以參閱jQuery css()方法一章節。
(2).scrollTop()可以參閱jQuery scrollTop()方法一章節。
相關文章
- 帶有半透明遮罩層可關閉視窗遮罩
- jQuery點選滑出層效果程式碼例項jQuery
- 帶有半透明背景居中彈出層詳解
- jQuery tab選項卡效果程式碼例項jQuery
- canvas載入效果程式碼例項Canvas
- CSS橢圓效果程式碼例項CSS
- 滑鼠懸浮從中心放大和縮小的半透明遮罩層遮罩
- 美化滾動條效果程式碼例項
- canvas原型鐘錶效果程式碼例項Canvas原型
- css3水滴效果程式碼例項CSSS3
- css背景虛化效果程式碼例項CSS
- canvas氣泡上浮效果程式碼例項Canvas
- css3晃動效果程式碼例項CSSS3
- CSS3心形效果程式碼例項CSSS3
- div前後翻轉效果程式碼例項
- 當前文字框高亮效果程式碼例項
- CSS3旋轉效果程式碼例項CSSS3
- 淡入淡出效果簡單程式碼例項
- canvas繪製箭頭效果程式碼例項Canvas
- html實現簡單ListViews效果的例項程式碼HTMLView
- CSS3滑過光束效果程式碼例項CSSS3
- CSS3小黃人效果程式碼例項CSSS3
- css3折角效果程式碼例項CSSS3
- CSS3梯形效果程式碼例項CSSS3
- CSS3背景漸變效果程式碼例項CSSS3
- CSS3星系運動效果程式碼例項CSSS3
- CSS滑鼠懸浮出現遮罩層程式碼演示CSS遮罩
- CSS3圖層陰影程式碼例項CSSS3
- 商品搶購倒數計時效果程式碼例項
- CSS3文字凹凸效果程式碼例項CSSS3
- 遮罩層遮罩
- 用flutter給圖片加個好看的遮罩層【flutter20個例項之六】Flutter遮罩
- CSS3文字陰影效果程式碼例項CSSS3
- 雙層 for 例項
- jQuery記住使用者名稱和密碼效果程式碼例項jQuery密碼
- dom操作程式碼例項
- css梯形程式碼例項CSS
- jQuery頂部帶有選項卡的焦點圖效果jQuery
- CSS:遮罩效果、陰影效果、毛玻璃效果CSS遮罩