帶有半透明效果的遮罩層程式碼例項
本章節分享一段程式碼例項,它實現了點選按鈕彈出帶有半透明遮罩層的效果。
程式碼例項如下:
[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()方法一章節。
相關文章
- 帶有半透明遮罩的彈出層例項程式碼遮罩
- 帶有滾動條的全屏遮罩層程式碼例項遮罩
- 帶有背景鎖屏遮罩的彈出層程式碼例項遮罩
- CSS實現div層半透明效果程式碼例項CSS
- 帶有半透明遮罩層可關閉視窗遮罩
- 根據滑鼠的方位出現遮罩層效果程式碼例項遮罩
- 能夠感知滑鼠移動方位的遮罩層效果程式碼例項遮罩
- 點選彈出半透明層程式碼例項
- 滑鼠按住拖動具有半透明效果的程式碼例項
- css3帶有光暈的流星效果程式碼例項CSSS3
- jQuery點選滑出層效果程式碼例項jQuery
- css半透明邊框程式碼例項CSS
- 點選彈出一個帶有半透明遮罩的居中視窗遮罩
- jQuery彈出帶有遮罩視窗效果jQuery遮罩
- 點選彈出帶有遮罩的視窗效果遮罩
- css實現半透明邊框程式碼例項CSS
- javascript帶有毫秒的計時器程式碼例項JavaScript
- 帶有半透明背景居中彈出層詳解
- jQuery 動畫效果程式碼例項jQuery動畫
- css切角效果程式碼例項CSS
- css模糊效果程式碼例項CSS
- canvas火焰效果程式碼例項Canvas
- 如何實現全屏遮罩層效果遮罩
- 滑鼠懸浮從中心放大和縮小的半透明遮罩層遮罩
- jquery 驗證碼效果程式碼例項jQuery
- canvas繪製帶有刻度的座標系程式碼例項Canvas
- 點選彈出居中帶有透明遮罩層視窗遮罩
- CSS3滑鼠懸浮出現半透明遮罩層詳解CSSS3遮罩
- CSS橢圓效果程式碼例項CSS
- css立體效果程式碼例項CSS
- js重力球效果程式碼例項JS
- js煙花效果程式碼例項JS
- JavaScript日曆效果程式碼例項JavaScript
- js鐘錶效果程式碼例項JS
- canvas字母雨效果程式碼例項Canvas
- jquery小球碰撞效果程式碼例項jQuery
- css Sprite 動畫效果程式碼例項CSS動畫
- css斜線效果程式碼例項CSS