JS实现可自定义大小,可双击关闭的弹出层效果


Posted in Javascript onOctober 16, 2015

本文实例讲述了JS实现可自定义大小,可双击关闭的弹出层效果。分享给大家供大家参考。具体如下:

这是一款JS弹出层,可自定义大小,双击关闭层,可以弹出500,300、500,500大小的窗口,窗口弹出后,在弹出窗口内双击即可关闭鼠标。我觉得挺不错的效果,可以学习到不少的JS知识。

运行效果截图如下:

JS实现可自定义大小,可双击关闭的弹出层效果

在线演示地址如下:

具体代码如下:

<!DOCTYPE html>
<html>
<head>
<title>JS弹出层</title>
<style>
body {margin:0px}
#Loading {position:absolute;z-index:10;left:10px;top:10px;border:1px #666666 solid;background:#eeeeee;width:10px;height:10px}
</style>
<script LANGUAGE="JavaScript">
<!--
function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);}
var OverH,OverW,ChangeDesc,ChangeH=50,ChangeW=50;
function OpenDiv(_Dw,_Dh,_Desc) {
$("Loading").innerHTML="";
OverH=_Dh;OverW=_Dw;ChangeDesc=_Desc;
$("Loading").style.display='';
if(_Dw>_Dh){ChangeH=Math.ceil((_Dh-10)/((_Dw-10)/50))}else if(_Dw<_Dh){ChangeW=Math.ceil((_Dw-10)/((_Dh-10)/50))}
$("Loading").style.top=(document.documentElement.clientHeight-10)/2+"px";
$("Loading").style.left=(document.documentElement.clientWidth-10)/2+"px";
OpenNow()
}
var Nw=10,Nh=10;
function OpenNow() {
if (Nw>OverW-ChangeW)ChangeW=2;
if (Nh>OverH-ChangeH)ChangeH=2;
Nw=Nw+ChangeW;Nh=Nh+ChangeH;
if(OverW>Nw||OverH>Nh) {
if(OverW>Nw) {
$("Loading").style.width=Nw+"px";
$("Loading").style.left=(document.documentElement.clientWidth-Nw)/2+"px";
}
if(OverH>Nh) {
$("Loading").style.height=Nh+"px";
$("Loading").style.top=(document.documentElement.clientHeight-Nh)/2+"px"
}
window.setTimeout("OpenNow()",10)
}else{
Nw=10;Nh=10;ChangeH=50;ChangeW=50;
$("Loading").innerHTML=ChangeDesc;
}
}
//-->
</script>
</head>
<body>
<a href="javascript:OpenDiv(500,300,'层1<br>双击关闭')">层1 500*300</a><br><br>
<a href="javascript:OpenDiv(500,200,'层2<br>双击关闭')">层2 500*200</a><br><br>
<a href="javascript:OpenDiv(200,500,'层3<br>双击关闭')">层3 200*500</a><br><br>
<a href="javascript:OpenDiv(500,500,'层4<br>双击关闭')">层4 500*500</a>
<a href="javascript:OpenDiv(500,500,'层5<br>双击关闭')">层5 500*500</a>
<div id="Loading" style="display:none" ondblclick="this.style.display='none'"></div>
</body>
</html>

希望本文所述对大家的JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jQuery ajax cache缓存问题
Jul 01 Javascript
document.createElement()用法及注意事项(ff下不兼容)
Mar 13 Javascript
使用apply方法实现javascript中的对象继承
Dec 16 Javascript
jQuery实现的自适应焦点图效果完整实例
Aug 24 Javascript
js实现StringBuffer的简单实例
Sep 02 Javascript
JS编写函数实现对身份证号码最后一位的验证功能
Dec 29 Javascript
简单谈谈gulp-changed插件
Feb 21 Javascript
javascript实现二叉树的代码
Jun 08 Javascript
详解vue 单页应用(spa)前端路由实现原理
Apr 04 Javascript
JavaScript数组排序功能简单实现
May 14 Javascript
vue data变量相互赋值后被实时同步的解决步骤
Aug 05 Javascript
vue实现移动端input上传视频、音频
Aug 18 Javascript
javascript实现3D切换焦点图
Oct 16 #Javascript
基于AngularJS实现页面滚动到底自动加载数据的功能
Oct 16 #Javascript
jQuery实现带渐显效果的人物多级关系图代码
Oct 16 #Javascript
angularJS与bootstrap结合实现动态加载弹出提示内容
Oct 16 #Javascript
javascript实现动态标签云
Oct 16 #Javascript
在Ubuntu系统上安装Node.JS的教程
Oct 15 #Javascript
jquery实现简单实用的弹出层效果代码
Oct 15 #Javascript
You might like
德生1994机评
2021/03/02 无线电
destoon官方标签大全
2014/06/20 PHP
Laravel学习教程之本地化模块
2017/08/18 PHP
jquery 屏蔽一个区域内的所有元素,禁止输入
2009/10/22 Javascript
js 在定义的时候立即执行的函数表达式(function)写法
2013/01/16 Javascript
JQuery调webservice实现邮箱验证(检测是否可用)
2013/05/21 Javascript
js中哈希表的几种用法总结
2014/01/28 Javascript
Javascript实现简单的富文本编辑器附演示
2014/06/16 Javascript
Javascript实现多彩雪花从天降散落效果的方法
2015/02/02 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
2016/08/05 Javascript
jQuery实现的表格展开伸缩效果实例
2016/09/07 Javascript
nodejs实现发出蜂鸣声音(系统报警声)的方法
2017/01/18 NodeJs
vue-resourse将json数据输出实例
2017/03/08 Javascript
Vue中定义全局变量与常量的各种方式详解
2017/08/23 Javascript
微信小程序组件之srcoll-view的详解
2017/10/19 Javascript
详解vue添加删除元素的方法
2018/06/30 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
vue-cli和v-charts实现可视化图表过程解析
2019/10/08 Javascript
vue+element获取el-table某行的下标,根据下标操作数组对象方式
2020/08/07 Javascript
[02:01]BBC DOTA2国际邀请赛每日综述:八强胜者组鏖战,中国队喜忧参半
2014/07/19 DOTA
使用scrapy实现爬网站例子和实现网络爬虫(蜘蛛)的步骤
2014/01/23 Python
python读写ini文件示例(python读写文件)
2014/03/25 Python
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
Python入门_学会创建并调用函数的方法
2017/05/16 Python
基于tensorflow加载部分层的方法
2018/07/26 Python
django之导入并执行自定义的函数模块图解
2020/04/01 Python
解决Jupyter notebook更换主题工具栏被隐藏及添加目录生成插件问题
2020/04/20 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
2020/05/13 Python
Django中使用Json返回数据的实现方法
2020/06/03 Python
奥地利体育网上商店:Gigasport
2019/10/09 全球购物
LUISAVIAROMA中国官网:时尚奢侈品牌购物网站
2020/11/01 全球购物
应届生法律求职信
2013/10/22 职场文书
秸秆管理实施方案
2014/03/15 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
浅谈哪个Python库才最适合做数据可视化
2021/06/28 Python