首页 > 网站 > WEB开发 > 正文

关于弹出层的总结

2024-04-27 15:08:03
字体:
来源:转载
供稿:网友

关于弹出层的我的做法:

       例如:点击“修改”按钮,弹出弹出框,并将需要修改的信息附到弹出框中;

       思路:

      1. 点击修改按钮,弹出阴影遮罩,阴影遮罩的样式代码如下:

    .mask{	width: 100%;	height: 100%;	background: rgba(0,0,0,0.5);	position: fixed;	z-index: 100;	display: none;     }      2.在阴影遮罩上弹出弹出框,让弹出框出现在浏览器窗口的中间位置,弹出框的CSS样式代码如下:

    .upd_layer{	position:fixed;	width:800px;        height:350px;	background-color:#fff;	left:50%;	top:50%;	margin-left:-400px;	display:none;	margin-top:-250px;	z-index:111;	overflow:auto;	padding-top:10px;      }     3.弹出后发现阴影遮罩下的页面还可以鼠标进行滚动,在js代码中增加弹出时给body 设置“overflow:hidden”样式,解决此问题,js代码如下:
    $(".mask").show();    $(".upd_layer").show();    $("body").css("overflow","hidden");           

     最后,发现在浏览器高度缩小时,弹出层的上部分可能被挡,可能影响小屏幕下的弹出效果,写了一段调整位置的函数解决此问题,js代码如下:

     

    //随时调整弹出层的位置    function adjustTanchuPos() {        $('.upd_layer').height($(window).height() * 0.5);	$('.upd_layer').css('margin-top', $('.upd_layer').height() * -0.5);    }    adjustTanchuPos();    $(window).resize(adjustTanchuPos);     这样,该弹出层在窗口大小变动时,利用了jQuery中的resize()方法会随时调整弹出层的位置。

    完整的demo详见我的github: https://github.com/pluscai/tanchu_demo/blob/master/tanchu


上一篇:Javascript闭包

下一篇:jquery自动赋值插件

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表