分享兩款帶遮罩的jQuery彈出框
第一款:頁面遮罩彈出框是最常見的一種狀況,用jQuery完成頁面遮罩彈出框,主要用的技能有JQuery,css與html。
html代碼下列:
<div id="main"><a href="javascript:showBg();">點擊這里查看效果</a> <div id="fullbg"></div> <div id="dialog"> <p class="close"><a href="#" onclick="closeBg();">封閉</a></p> <div>正在加載,請稍后....</div> </div> </div>
css代碼以下:
body {
font-family:Arial, Helvetica, sans-serif;
font-size:12px;
margin:0;
}
#main {
height:1800px;
padding-top:90px;
text-align:center;
}
#fullbg {
bac千克round-color:gray;
left:0;
opacity:0.5;
position:absolute;
top:0;
z-index:3;
filter:alpha(opacity=50);
-moz-opacity:0.5;
-khtml-opacity:0.5;
}
#dialog {
bac公斤round-color:#fff;
border:5px solid rgba(0,0,0, 0.4);
height:400px;
left:50%;
margin:-200px 0 0 -200px;
padding:1px;
position:fixed !important; /* 浮動對話框 */
position:absolute;
top:50%;
width:400px;
z-index:5;
border-radius:5px;
display:none;
}
#dialog p {
margin:0 0 12px;
height:24px;
line-height:24px;
bac公斤round:#CCCCCC;
}
#dialog p.close {
text-align:right;
padding-right:10px;
}
#dialog p.close a {
color:#fff;
text-decoration:none;
}
jQuery代碼以下:
<script type="text/javascript">
//展示灰色 jQuery 遮罩層
function showBg() {
var bh = $("body").height();
var bw = $("body").width();
$("#fullbg").css({
height:bh,
width:bw,
display:"block"
});
$("#dialog").show();
}
//關閉灰色 jQuery 遮罩
function closeBg() {
$("#fullbg,#dialog").hide();
}
</script>
第二款:簡單制作一個jQuery遮罩層,當然也可以做成公共函數(shù),方便以后多次使用.本教程適合新手。
首先給出html:
<p class="showbtn"><a href="javascript:void(0);">顯示遮罩層</a></p> <div id="bg"></div> <div class="box" style="display:none"> <h2>jQuery 學習交流<a href="#" class="close">關閉</a></h2> <div class="list"> <ul> <li>腳本之家</li> <li>腳本之家</li> <li>腳本之家</li> </ul> </div> </div>
遮罩層的樣式如下:
/* box */
.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;}
.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:#666;position:absolute;z-index:99;left:0;top:0;display:none;width:100%;height:100%;opacity:0.5;filter: alpha(opacity=50);-moz-opacity: 0.5;}
最后是jQuery來實現(xiàn)彈出層的顯示和隱藏:
$(function () {
$(".showbtn").click(function () {
$("#bg").css({
display: "block", height: $(document).height()
});
var $box = $('.box');
$box.css({
//設置彈出層距離左邊的位置
left: ($("body").width() - $box.width()) / 2 - 20 + "px",
//設置彈出層距離上面的位置
top: ($(window).height() - $box.height()) / 2 + $(window).scrollTop() + "px",
display: "block"
});
});
//點擊關閉按鈕的時候,遮罩層關閉
$(".close").click(function () {
$("#bg,.box").css("display", "none");
});
});
總結:使用jQuery實現(xiàn)遮罩的思路就是點擊按鈕的時候觸發(fā)遮罩層,過彈出層的css層級z-index讓遮罩層遮住整個頁面,同時通過彈出層的css層級z-index高于遮罩層,這樣彈出層就高亮顯示了。然后點擊關閉彈出層按鈕的時候,讓彈出層隱藏,同時也讓遮罩層隱藏。這種方法寫法是比較快速的,后續(xù)有空我會把這段代碼寫成公共函數(shù),這樣方便多次調用。
以上就是本文的全部內容,希望對大家的學習有所幫助。
相關文章
jquery+springboot實現(xiàn)文件上傳功能
這篇文章主要為大家詳細介紹了jquery+springboot文件上傳,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11

