当前位置: 首页 > 图文教程 > 网络编程 > Javascript > jQuery DIV弹出效果实现代码

Javascript
Javascript-Mozilla和IE中的一个函数直接量的问题分析
TopList标签和JavaScript结合两例
javascript-TreeView父子联动效果保持节点状态一致
不错的JS中变量相关的细节分析
解决使用attachEvent函数时,this指向被绑定的元素的问题的方法
根据地区不同显示时间的javascript代码
javascript下查找父节点的简单方法
分享别人写的一个小型js框架
封装好的省市地区联动控件附下载
权威JavaScript 中的内存泄露模式
JavaScript 编程引入命名空间的方法与代码
IE/FireFox具备兼容性的拖动代码
分析 JavaScript 中令人困惑的变量赋值
推荐一个小巧的JS日历
让回调函数 showResponse 也带上参数的代码
增强的 JavaScript 的 trim 函数的代码
高亮闪烁某个元素的js脚本
用JavaScript 处理 URL 的两个函数代码
JavaScript 模仿vbs中的 DateAdd() 函数的代码
用js实现随机返回数组的一个元素

Javascript 中的 jQuery DIV弹出效果实现代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 512 ::
收藏到网摘: n/a

现在很多网站都流行这种弹出式的对话框或是信息显示框,很想将这个流行元素加入到自己的项目中。使用jQuery可以不费大力气实现这种效果。将其记录到我的Blog中,与业界朋友们起分享。

先上个效果图,可以点击Close按钮或是在遮罩层上任意处点击,就可以关闭弹出层。

HTML代码

复制代码 代码如下:

<div id='pop-div' style="width: 300px" class="pop-box" >
<h4>标题位置</h4>
<div class="pop-box-body" >
<p>
正文内容
</p>
</div>
<div class='buttonPanel' style="text-align: right" style="text-align: right">
<input value="Close" id="btn1" onclick="hideDiv('pop-div');" type="button" />
</div>
</div>

代码很简洁。最外层是一个大的DIV作为弹出层的容器,H4作为弹出层的标题,又一个DIV用于弹出层正文内容显示,再一个Div用于放置一些按钮。
CSS代码
复制代码 代码如下:

.pop-box {
z-index: 9999; /*这个数值要足够大,才能够显示在最上层*/
margin-bottom: 3px;
display: none;
position: absolute;
background: #FFF;
border:solid 1px #6e8bde;
}
.pop-box h4 {
color: #FFF;
cursor:default;
height: 18px;
font-size: 14px;
font-weight:bold;
text-align: left;
padding-left: 8px;
padding-top: 4px;
padding-bottom: 2px;
background: url("../images/header_bg.gif") repeat-x 0 0;
}
.pop-box-body {
clear: both;
margin: 4px;
padding: 2px;
}

JS代码
复制代码 代码如下:

function popupDiv(div_id) {
var div_obj = $("#"+div_id);
var windowWidth = document.documentElement.clientWidth;
var windowHeight = document.documentElement.clientHeight;
var popupHeight = div_obj.height();
var popupWidth = div_obj.width();
//添加并显示遮罩层
$("<div id='mask'></div>").addClass("mask")
.width(windowWidth * 0.99)
.height(windowHeight * 0.99)
.click(function() {hideDiv(div_id); })
.appendTo("body")
.fadeIn(200);
div_obj.css({"position": "absolute"})
.animate({left: windowWidth/2-popupWidth/2,
top: windowHeight/2-popupHeight/2, opacity: "show" }, "slow");
}
function hideDiv(div_id) {
$("#mask").remove();
$("#" + div_id).animate({left: 0, top: 0, opacity: "hide" }, "slow");
}