基于Jquery的开发个代阴影的对话框效果代码


Posted in Javascript onJuly 28, 2011
<script type="text/javascript" src="http://img.zzl.com/script/jquery/jquery-1.4.2.min.js"></script> 
<script type="text/javascript"> 
$(function() { 
$("#open").click(function() { 
openDialog(a1); //调用,直接写上DIV的ID即可 
}); 
}); 
var openDialog = function(o) { 
var dialog = new zzlDialog(o); 
dialog.open(); 
} 
var zzlDialog = function(o) { 
this.init = function() { 
/* 对话框初始化 */ 
var XBox = '\ 
<div id="mask"/>\ 
<div id="wai">\ 
</div>\ 
<div id="nie">\ 
<table>\ 
<thead>\ 
<tr>\ 
<td>\ 
阴影弹出框\ 
</td>\ 
<td>\ 
</td>\ 
</tr>\ 
</thead>\ 
<tbody>\ 
<tr>\ 
<td colspan="2">' + $(o).html() + '\ 
</td>\ 
</tr>\ 
</tbody>\ 
</table>\ 
</div>\ 
'; 
$(document.body).append(XBox); 
}; this.cssInit = function() { 
/* css初始化 */ 
$("#wai").css({ "padding": "10px", "background": "#000", "filter": "Alpha(Opacity='50')", "position": "absolute" }); 
$("#nie").css({ "position": "absolute", "z-index": "1000" }); 
$("#nie>table").css({ "border": "1px solid rgb(55,119,188)", "border-collapse": "collapse", "background": "#fff" }); 
$("#nie>table>thead>tr").css({ "background": "rgb(0,94,172)", "color": "#fff", "height": "30px", "font-size": "14px", "font-weight": "bold" }); 
$("#nie>table").find("td").css({ "padding": "5"}); 
/* 内部主体定位 */ 
$("#nie").css({ "top": "50px" }); 
$("#nie").css({ "left": "50px" }); 
/* 关闭按钮 */ 
var $close = $("#nie>table>thead").find("td").next("td"); 
$close.html("<span>关闭</span>"); 
$close.css({ "text-align": "right", "padding-right": "5px" }); 
$close.find("span").css({ "font-weight": "normal", "cursor": "hand" }); 
$close.find("span").click(function() { new zzlDialog().closes(); }); 
/* 外部阴影添加 ,及位置和大小由内部内容来控制 */ 
$("#wai").css({ "width": ($("#nie>table").width() + 16) + "px", "height": ($("#nie>table").height() + 16) + "px" }); 
$("#wai").css({ "top": $("#nie").position().top - 8 + "px", "left": $("#nie").position().left - 8 + "px", "z-index": $("#nie").css("z-index") }); 
// $("#wai").corner("5px"); //圆角 
}; 
this.open = function() { 
this.init(); 
this.cssInit(); 
this.shadow(); 
}; 
this.shadow = function() { 
this.event_b_show(); 
if (window.attachEvent) { 
window.attachEvent('onresize', this.event_b); 
window.attachEvent('onscroll', this.event_b); 
} 
else { 
window.addEventListener('resize', this.event_b, false); 
window.addEventListener('scroll', this.event_b, false); 
} 
}; 
this.event_b = function() { 
var oShadow = $('#mask'); 
if (oShadow.css("display") != "none") { 
if (this.event_b_show) { 
this.event_b_show(); 
} 
} 
}; 
this.closes = function() { 
var oShadow = $('#mask'); 
oShadow.css({ 'display': 'none' }); 
$("#wai").remove(); 
$("#nie").remove(); 
}; 
this.event_b_show = function() { 
var oShadow = $('#mask'); 
oShadow.css({ 'position': 'absolute', 'display': '', 'opacity': '0.1', 'filter': 'alpha(opacity=10)', 'background': '#000' }); 
var sClientWidth = parent ? parent.document.body.offsetWidth : document.body.offsetWidth; 
var sClientHeight = parent ? parent.document.body.offsetHeight : document.body.offsetHeight; 
var sScrollTop = parent ? (parent.document.body.scrollTop + parent.document.documentElement.scrollTop) : (document.body.scrollTop + document.documentElement.scrollTop); 
oShadow.css({ 'top': '0px', 'left': '0px', 'width': sClientWidth + "px", 'height': (sClientHeight + sScrollTop) + "px" });
Javascript 相关文章推荐
jquery 读取页面load get post ajax 四种方式代码写法
Apr 02 Javascript
JavaScript实现广告的关闭与显示效果实例
Jul 02 Javascript
JavaScript修改作用域外变量的方法
Mar 25 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
Jul 08 Javascript
JavaScript Ajax实现异步通信
Dec 14 Javascript
angularjs实现上拉加载和下拉刷新数据功能
Jun 12 Javascript
基于Vue生产环境部署详解
Sep 15 Javascript
javascript实现电脑和手机版样式切换
Nov 10 Javascript
解读ES6中class关键字
Nov 20 Javascript
Node.js中的cluster模块深入解读
Jun 11 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
May 27 Javascript
VUE中使用HTTP库Axios方法详解
Feb 05 Javascript
jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法
Jul 28 #Javascript
js中使用DOM复制(克隆)指定节点名数据到新的XML文件中的代码
Jul 27 #Javascript
另一个javascript小测验(代码集合)
Jul 27 #Javascript
jsTree 基于JQuery的排序节点 Bug
Jul 26 #Javascript
Jquery中显示隐藏的实现代码分析
Jul 26 #Javascript
jquery attr 设定src中含有&amp;(宏)符号问题的解决方法
Jul 26 #Javascript
基于jquery实现的移入页面上空文本框时,让它变为焦点,移出清除焦点
Jul 26 #Javascript
You might like
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析
2011/08/15 PHP
Codeigniter操作数据库表的优化写法总结
2014/06/12 PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
2019/10/16 PHP
PHP7新增函数
2021/03/09 PHP
让Firefox支持event对象实现代码
2009/11/07 Javascript
js 控制页面跳转的5种方法
2013/09/09 Javascript
js出生日期 年月日级联菜单示例代码
2014/01/10 Javascript
node.js中的fs.realpath方法使用说明
2014/12/16 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
jQuery表单验证功能实例
2015/08/28 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
老生常谈JavaScript 函数表达式
2016/09/01 Javascript
Javascript点击按钮随机改变数字与其颜色
2016/09/01 Javascript
js遮罩效果制作弹出注册界面效果
2017/01/25 Javascript
js下拉菜单生成器dropMenu使用方法详解
2017/08/01 Javascript
原生nodejs使用websocket代码分享
2018/04/07 NodeJs
在element-ui的select下拉框加上滚动加载
2019/04/18 Javascript
vue实现浏览器全屏展示功能
2019/11/27 Javascript
一文读懂vue动态属性数据绑定(v-bind指令)
2020/07/20 Javascript
js实现计算器功能
2020/08/10 Javascript
[53:03]Optic vs TNC 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Tensorflow实现在训练好的模型上进行测试
2020/01/20 Python
python求numpy中array按列非零元素的平均值案例
2020/06/08 Python
在html页面中取得session中的值的方法
2020/08/11 HTML / CSS
美国时装品牌:Nautica(诺帝卡)
2016/08/28 全球购物
方正Java笔试题
2014/07/03 面试题
工商企业管理应届生求职信
2013/11/03 职场文书
人事专员岗位职责
2013/11/20 职场文书
个人自我评价和职业目标
2014/01/24 职场文书
单位创先争优活动方案
2014/01/26 职场文书
《小儿垂钓》教学反思
2014/02/23 职场文书
自我鉴定书
2014/03/24 职场文书
2014年最新领导班子整改方案
2014/09/27 职场文书
毕业论文致谢格式模板
2015/05/14 职场文书
吧主申请感言怎么写
2015/08/03 职场文书
Python读写yaml文件
2022/03/20 Python