javascript实现的弹出层背景置灰-模拟(easyui dialog)


Posted in Javascript onDecember 27, 2013

页面比较丑,只把功能实现了。^ ^

<title>模仿easyui dialog的效果</title> 
<script> 
//取得页面元素 
var getElement = function() { 
return document.getElementById(arguments[0]) || false; 
} 
function openDialog(dialogId) { 
var maskId = "mask"; 
//如果有,先删除原来的 
if (getElement(dialogId)) { 
document.removeChild(getElement(dialogId));//删除操作:弹出的div 
} 
if (getElement(maskId)) { 
document.removeChild(getElement(maskId));//删除操作:弹出的不可操作(面具)层 
} //背景置灰 
var maskDiv = document.createElement("div"); 
maskDiv.id = maskId; 
maskDiv.style.position = "absolute"; 
maskDiv.style.zIndex = "1"; 
maskDiv.style.width = document.body.scrollWidth + "px"; 
maskDiv.style.height = document.body.scrollHeight + "px"; 
maskDiv.style.top = "0px"; 
maskDiv.style.left = "0px"; 
maskDiv.style.background = "gray"; 
maskDiv.style.filter = "alpha(opacity=10)"; 
maskDiv.style.opacity = "0.30";//透明度 
document.body.appendChild(maskDiv);//向body之中增加背景层 
//Dialog 
var dialogDiv = document.createElement("div"); 
dialogDiv.id = dialogId; 
dialogDiv.style.position = "absolute"; 
dialogDiv.style.zIndex = "9999"; 
dialogDiv.style.width = "400px"; 
dialogDiv.style.height = "200px"; 
dialogDiv.style.top = (parseInt(document.body.scrollHeight) - 200) / 2 + "px"; // 屏幕居中 
dialogDiv.style.left = (parseInt(document.body.scrollWidth) - 400) / 2 + "px"; // 屏幕居中 
dialogDiv.style.background = "white"; 
dialogDiv.style.border = "1px solid gray"; 
dialogDiv.style.padding = "5px"; 
dialogDiv.innerHTML = "(Dialog Content)"; 
//Dialog之中的关闭操作:关闭背景层和Dialog层 
var closeControlloer = document.createElement("a");//创建一个超链接(做为关闭的触发) 
closeControlloer.href = "#"; 
closeControlloer.innerHTML = "关闭"; 
closeControlloer.onclick = function() { 
document.body.removeChild(getElement(dialogId));//删除diaglog 
document.body.removeChild(getElement(maskId));//删除背景层 
} 
dialogDiv.appendChild(closeControlloer);//dialog之中增加"关闭"操作 
document.body.appendChild(dialogDiv);//body之中增加dialog 
} 
</script> 
<a href="#" onclick="openDialog('dialog');">Open Dialog</a>

javascript实现的弹出层背景置灰-模拟(easyui dialog)
Javascript 相关文章推荐
Javascript 面向对象特性
Dec 28 Javascript
浏览器解析js生成的html出现样式问题的解决方法
Apr 16 Javascript
JavaScript实现拼音排序的方法
Nov 20 Javascript
浅析ajax请求json数据并用js解析(示例分析)
Jul 13 Javascript
在javascript中实现函数数组的方法
Dec 25 Javascript
js面向对象编程之如何实现方法重载
Jul 02 Javascript
jQuery的观察者模式详解
Dec 22 Javascript
Javascript进制转换实例分析
May 14 Javascript
JS公共小方法之判断对象是否为domElement的实例
Nov 25 Javascript
Ajax验证用户名或昵称是否已被注册
Apr 05 Javascript
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
Oct 13 jQuery
微信小程序scroll-view隐藏滚动条的方法详解
Mar 25 Javascript
jQuery删除节点的三个方法即remove()detach()和empty()
Dec 27 #Javascript
类似php的js数组的in_array函数自定义方法
Dec 27 #Javascript
JavaScript将页面表格导出为Excel的具体实现
Dec 27 #Javascript
Java/JS获取flash高宽的具体方法
Dec 27 #Javascript
location.href用法总结(最主要的)
Dec 27 #Javascript
Javascript四舍五入Math.round()与Math.pow()使用介绍
Dec 27 #Javascript
JS去除字符串两端空格的简单实例
Dec 27 #Javascript
You might like
php的日期处理函数及uchome的function_coomon中日期处理函数的研究
2011/01/12 PHP
1亿条数据如何分表100张到Mysql数据库中(PHP)
2015/07/29 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
浅析PHP 中move_uploaded_file 上传中文文件名失败
2019/04/17 PHP
SyntaxHighlighter代码加色使用方法
2008/09/07 Javascript
jquery next nextAll nextUntil siblings的区别介绍
2013/10/05 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
js实现分享到随页面滚动而滑动效果的方法
2015/04/10 Javascript
XML、HTML、CSS与JS的区别整理
2016/02/18 Javascript
onclick和onblur冲突问题的快速解决方法
2016/04/28 Javascript
JS获取元素多层嵌套思路详解
2016/05/16 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
2016/07/12 Javascript
layui导航栏实现代码
2017/05/19 Javascript
详解Vue爬坑之vuex初识
2017/06/14 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
js form表单input框限制20个字符,10个汉字代码实例
2019/04/12 Javascript
laypage+SpringMVC实现后端分页
2019/07/27 Javascript
Node.js API详解之 repl模块用法实例分析
2020/05/25 Javascript
python中abs&amp;map&amp;reduce简介
2018/02/20 Python
分析python动态规划的递归、非递归实现
2018/03/04 Python
详解python中list的使用
2019/03/15 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
Pycharm配置PyQt5环境的教程
2020/04/02 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
python单例模式的应用场景实例讲解
2021/02/24 Python
养殖项目策划书范文
2014/01/13 职场文书
副科竞争上岗演讲稿
2014/05/12 职场文书
超市优秀员工获奖感言
2014/08/15 职场文书
领导干部学习“三严三实”思想汇报
2014/09/15 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
归元寺导游词
2015/02/06 职场文书
论文答辩开场白大全
2015/05/27 职场文书
MYSQL数据库使用UTF-8中文编码乱码的解决办法
2021/05/26 MySQL
Python 的 sum() Pythonic 的求和方法详细
2021/10/16 Python
详解nginx安装过程并代理下载服务器文件
2022/02/12 Servers