JS遮罩层效果 兼容ie firefox jQuery遮罩层


Posted in Javascript onJuly 26, 2010
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>史上最精简,最强大的JS遮罩层效果,支持ie firefox jQuery遮罩层</title> 
<script type="text/javascript" src="jquery-1.3.2.js"></script> 
<script type="text/javascript"> 
//显示灰色JS遮罩层 
function showBg(ct,content){ 
var bH=$("body").height(); 
var bW=$("body").width()+16; 
var objWH=getObjWh(ct); 
$("#fullbg").css({width:bW,height:bH,display:"block"}); 
var tbT=objWH.split("|")[0]+"px"; 
var tbL=objWH.split("|")[1]+"px"; 
$("#"+ct).css({top:tbT,left:tbL,display:"block"}); 
$("#"+content).html("<div style='text-align:center'>正在加载,请稍后...</div>"); 
$(window).scroll(function(){resetBg()}); 
$(window).resize(function(){resetBg()}); 
} 
function getObjWh(obj){ 
var st=document.documentElement.scrollTop;//滚动条距顶部的距离 
var sl=document.documentElement.scrollLeft;//滚动条距左边的距离 
var ch=document.documentElement.clientHeight;//屏幕的高度 
var cw=document.documentElement.clientWidth;//屏幕的宽度 
var objH=$("#"+obj).height();//浮动对象的高度 
var objW=$("#"+obj).width();//浮动对象的宽度 
var objT=Number(st)+(Number(ch)-Number(objH))/2; 
var objL=Number(sl)+(Number(cw)-Number(objW))/2; 
return objT+"|"+objL; 
} 
function resetBg(){ 
var fullbg=$("#fullbg").css("display"); 
if(fullbg=="block"){ 
var bH2=$("body").height(); 
var bW2=$("body").width()+16; 
$("#fullbg").css({width:bW2,height:bH2}); 
var objV=getObjWh("dialog"); 
var tbT=objV.split("|")[0]+"px"; 
var tbL=objV.split("|")[1]+"px"; 
$("#dialog").css({top:tbT,left:tbL}); 
} 
} //关闭灰色JS遮罩层和操作窗口 
function closeBg(){ 
$("#fullbg").css("display","none"); 
$("#dialog").css("display","none"); 
} 
</script> 
<style type="text/css"> 
*{ 
font-family:Arial, Helvetica, sans-serif; 
font-size:12px; 
} 
#fullbg{ 
background-color: Gray; 
display:none; 
z-index:3; 
position:absolute; 
left:0px; 
top:0px; 
filter:Alpha(Opacity=30); 
/* IE */ 
-moz-opacity:0.4; 
/* Moz + FF */ 
opacity: 0.4; 
} 
#dialog { 
position:absolute; 
width:200px; 
height:200px; 
background:#F00; 
display: none; 
z-index: 5; 
} 
#main { 
height: 1500px; 
} 
</style> 
</head> 
<body> 
<div id="main"> 
<a href="#rhis" onclick="showBg('dialog','dialog_content');">点击这里看JS遮罩层效果</a> 
</div> 
<!-- JS遮罩层 --> 
<div id="fullbg"></div> 
<!-- end JS遮罩层 --> 
<!-- 对话框 --> 
<div id="dialog"> 
<div id="dialog_content"></div> 
<div style="text-align: center;"><a href="#" onclick="closeBg();">关闭</a></div> 
</div> 
<!-- JS遮罩层上方的对话框 --> 
</body> 
</html>
Javascript 相关文章推荐
Jquery Validation插件防止重复提交表单的解决方法
Mar 05 Javascript
javascript中&quot;/&quot;运算符常见错误
Oct 13 Javascript
让低版本浏览器支持input的placeholder属性(js方法)
Apr 03 Javascript
在css加载完毕后自动判断页面是否加入css或js文件
Sep 10 Javascript
chrome不支持form.submit的解决方案
Apr 28 Javascript
JavaScript中setter和getter方法介绍
Jul 11 Javascript
EasyUI学习之Combobox级联下拉列表(2)
Dec 29 Javascript
详解Vue路由开启keep-alive时的注意点
Jun 20 Javascript
spring+angular实现导出excel的实现代码
Feb 27 Javascript
jQuery实现的导航条点击后高亮显示功能示例
Mar 04 jQuery
使用Vue-cli3.0创建的项目 如何发布npm包
Oct 10 Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
Feb 19 Javascript
腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口
Jul 26 #Javascript
基于Jquery的文字滚动跑马灯插件(一个页面多个滚动区)
Jul 26 #Javascript
JQuery的Validation插件中Remote验证的中文问题
Jul 26 #Javascript
基于JQuery的一句代码实现表格的简单筛选
Jul 26 #Javascript
jQuery getJSON 处理json数据的代码
Jul 26 #Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
Jul 25 #Javascript
用jquery实现下拉菜单效果的代码
Jul 25 #Javascript
You might like
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
php获取当前时间的毫秒数的方法
2014/01/26 PHP
php生成静态html页面的方法(2种方法)
2015/09/14 PHP
Prototype1.6 JS 官方下载地址
2007/11/30 Javascript
悄悄用脚本检查你访问过哪些网站的代码
2010/12/04 Javascript
javascript开发技术大全 第4章 直接量与字符集
2011/07/03 Javascript
基于jquery的拖动布局插件
2011/11/25 Javascript
input输入框的自动匹配(原生代码)
2013/03/19 Javascript
深入解析contentWindow, contentDocument
2013/07/04 Javascript
js中parseInt函数浅谈
2013/07/31 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
JQuery异步获取返回值中文乱码的解决方法
2015/01/29 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
vue中SPA单页面应用程序详解
2017/11/07 Javascript
vue 不使用select实现下拉框功能(推荐)
2018/05/17 Javascript
微信小程序开发之tabbar图标和颜色的实现
2018/10/17 Javascript
详解如何创建并发布一个 vue 组件
2018/11/08 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
详解利用nodejs对本地json文件进行增删改查
2019/09/20 NodeJs
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
2020/08/07 Javascript
js实现购物车商品数量加减
2020/09/21 Javascript
Python守护进程用法实例分析
2015/06/04 Python
全面分析Python的优点和缺点
2018/02/07 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
pycharm内无法import已安装的模块问题解决
2020/02/12 Python
css3隔行变换色实现示例
2014/02/19 HTML / CSS
Chain Reaction Cycles俄罗斯:世界上最大的在线自行车商店
2019/08/27 全球购物
网络工程师面试(三木通信技术有限公司)
2013/06/05 面试题
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
2014光棍节单身联谊活动策划书
2014/10/10 职场文书
小爸爸观后感
2015/06/15 职场文书
办公用品管理制度
2015/08/04 职场文书
二手手机买卖合同范本(2019年版)
2019/10/28 职场文书
Python pandas求方差和标准差的方法实例
2021/08/04 Python