我的编程空间,编程开发者的网络收藏夹
学习永远不晚

怎么用js+css实现div遮罩层效果

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

怎么用js+css实现div遮罩层效果

本篇内容主要讲解“怎么用js+css实现div遮罩层效果”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用js+css实现div遮罩层效果”吧!

<style type="text/css">

#overlay {
    background: #000;
    filter: alpha(opacity =   50); 
    opacity: 0.5; 
    display: none;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 100; 
    display: none;
}

.MyAlertBox {
    position: absolute;
    
    z-index: 200;
    width: 520px;
    height: 349px;
}

.closeBtn {
    position: absolute;
    z-index: 300;
    width: 35px;
    height: 20px;
    cursor: pointer;
    margin: -146px 220px;
    background: url("<%=basePath %>common/imgs/cross_diy.png") no-repeat;
}

.closeBtn_hover{
    background: url("<%=basePath %>common/imgs/cross_diy_hover.png") no-repeat;
}
</style>
<script type="text/javascript">

$(function(){
    
    $("#loginBtn").click(function(){
        showOverlay();
        adjust("loginFrame");
        adjust("closeBtn");
    });
    
    $("#closeBtn").click(function(){
        hideOverlay();
    });
    
    $("#closeBtn").hover(function(){
        $("#closeBtn").toggleClass("closeBtn_hover");
    });
    //当浏览器窗口大小改变时
    $(window).resize(function () {
        adjust("loginFrame");
        adjust("closeBtn");
    });
    //当拉动滚动条时,弹出层和遮罩层跟着移动
    $(window).scroll(function () {
        adjust("loginFrame");
        adjust("closeBtn");
        //网页被卷去的左
        myleft = $(document).scrollLeft();
        //网页被卷去的高
        mytop = $(document).scrollTop();
        $("#overlay").css({ "left": myleft, "top": mytop });
    });
});

function pageHeight() {
    //return document.body.scrollHeight;
    return window.availHeight;
}

function pageWidth() {
    //return document.body.scrollWidth;
    return window.availWidth;
}

function showOverlay() {
    $("#overlay").height(pageHeight());
    $("#overlay").width(pageWidth());
    // fadeTo第一个参数为速度,第二个为透明度
    // 多重方式控制透明度,保证兼容性,但也带来修改麻烦的问题
    $("#overlay").fadeTo(200, 0.5);
    //为遮罩内容层添加样式
    $("#loginFrame").css("display","block");
    $("#loginFrame").addClass("MyAlertBox");
    //为遮罩层关闭按钮添加样式
    $("#closeBtn").css("display","block");
    $("#closeBtn").addClass("closeBtn");
}

function hideOverlay() {
    $("#overlay").fadeOut(200);
    $("#loginFrame").css("display","none");
    $("#closeBtn").css("display","none");
}
//浏览器视口的高度
function windowHeight() {
    var de = document.documentElement;
    return self.innerHeight || (de && de.clientHeight)
            || document.body.clientHeight;
}
//浏览器视口的宽度
function windowWidth() {
    var de = document.documentElement;
    return self.innerWidth || (de && de.clientWidth)
            || document.body.clientWidth
}

function scrollY() {
    var de = document.documentElement;
    return self.pageYOffset || (de && de.scrollTop) || document.body.scrollTop;
}

function scrollX() {
    var de = document.documentElement;
    return self.pageXOffset || (de && de.scrollLeft)
            || document.body.scrollLeft;
}

function adjust(id) {
    var w = $("#"+id).width();
    var h = $("#"+id).height();
    var t = scrollY() + (windowHeight() / 2) - (h / 2);
    var l = scrollX() + (windowWidth() / 2) - (w / 2);
    $("#"+id).css( {
        left : l + 'px',
        top : t + 'px'
    });
}
</script>

到此,相信大家对“怎么用js+css实现div遮罩层效果”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

怎么用js+css实现div遮罩层效果

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

css3如何实现遮罩层镂空效果

这篇文章将为大家详细讲解有关css3如何实现遮罩层镂空效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先看看效果【 方法一:截图模拟实现 】原理:先截一张相同位置的图片,创建一个遮罩层,然后把图片定位在
2023-06-08

CSS如何实现带遮罩层可关闭的弹窗效果

这篇文章给大家分享的是有关CSS如何实现带遮罩层可关闭的弹窗效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。实际开发中常常少不了使用弹窗,在学习css3的时候我发现可以通过纯css实现带遮罩层可关闭的弹窗。使用
2023-06-08

CSS如何实现鼠标移至图片上显示遮罩层效果

这篇文章主要介绍了CSS如何实现鼠标移至图片上显示遮罩层效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、将遮罩层html代码与图片放在一个div我是放在 .img_di
2023-06-08

怎么用jquery+CSS实现悬浮登录框遮罩

这篇文章主要介绍了怎么用jquery+CSS实现悬浮登录框遮罩的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用jquery+CSS实现悬浮登录框遮罩文章都会有所收获,下面我们一起来看看吧。先上效果图,阴影部
2023-06-29

利用CSS实现图片遮罩特效的技巧和方法

在网页设计中,为图片增加一些特效可以提升用户的浏览体验。其中,图片遮罩特效是一种常见且具有吸引力的效果,可以为图片增添一种神秘感和美感。本文将介绍利用CSS实现图片遮罩特效的技巧和方法,并提供具体的代码示例供参考。一、利用CSS的伪元素实现
2023-10-21

怎么在css中实现遮罩全屏居中对齐

这篇文章将为大家详细讲解有关怎么在css中实现遮罩全屏居中对齐,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。具体代码如下所示: