#dvbg{background-color:#666666; position:absolute; z-index:99; left:0; top:0; display:none;
100%; height:1000px;opacity:0.5;filter: alpha(opacity=50);-moz-opacity: 0.5;}
#dvpop{position:absolute;display:none;auto; height:auto; z-index:100;
background-color:#fff; border:1px #8FA4F5 solid; padding:1px;}
以下是在需要弹框的页面上放置的弹框div,是内置在弹框父页面的:
<div id="dvbg"></div>
<div id="dvpop">
<table>弹出框内容在这里</table>
</div>
</div>
需要弹出框显示时,用以下代码:
$("#dvbg").css({ display: "block", height: $(document).height() });
setDivCenter("#dvpop");
//让指定的DIV始终显示在屏幕正中间
function setDivCenter(divName) {
var top = ($(window).height() - $(divName).height()) / 2;
var left = ($(window).width() - $(divName).width()) / 2;
var scrollTop = $(document).scrollTop();
var scrollLeft = $(document).scrollLeft();
alert($(document).height());
$(divName).css({ position: 'absolute', top: top + scrollTop, left: left + scrollLeft }).show();
}
关闭pop窗口时,使用以下代码:
function close()
{
$("#dvbg").css("display", "none");
$("#dvpop").css("display", "none");
}
另,附加上去有些资料
jQuery(window).height()代表了当前可见区域的大小,而jQuery(document).height()则代表了整个文档的高度,可视具体情况使用.
注意当浏览器窗口大小改变时(如最大化或拉大窗口后) jQuery(window).height() 随之改变,但是jQuery(document).height()是不变的。
$(document).scrollTop() 获取垂直滚动的距离 即当前滚动的地方的窗口顶端到整个页面顶端的距离
$(document).scrollLeft() 这是获取水平滚动条的距离
要获取顶端 只需要获取到scrollTop()==0的时候 就是顶端了
要获取底端 只要获取scrollTop()>=$(document).height()-$(window).height() 就可以知道已经滚动到底端了
$(document).height() //是获取整个页面的高度
$(window).height() //是获取当前 也就是你浏览器所能看到的页面的那部分的高度 这个大小在你缩放浏览器窗口大小时 会改变 与document是不一样的 根据英文应该也能理解吧
自己做个实验就知道了
$(document).scroll(function(){
$("#lb").text($(document).scrollTop());
})
<span id="lb" style="top:100px;left:100px;position:fixed;"></span><!--一个固定的span标记 滚动时方便查看-->