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 相关文章推荐
轻轻松松学习JavaScript
Feb 25 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
Jul 18 Javascript
JavaScript中Function详解
Feb 27 Javascript
jQuery实现拖拽效果插件的方法
Mar 23 Javascript
javascript实现倒计时跳转页面
Jan 17 Javascript
总结十个Angular.js由浅入深的面试问题
Aug 26 Javascript
js html5 css俄罗斯方块游戏再现
Oct 17 Javascript
vue2组件实现懒加载浅析
Mar 29 Javascript
微信小程序实现动态显示和隐藏某个控件功能示例
Dec 14 Javascript
详解vue中this.$emit()的返回值是什么
Apr 07 Javascript
vue 解决data中定义图片相对路径页面不显示的问题
Aug 13 Javascript
vue实现轮播图帧率播放
Jan 26 Vue.js
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
极典R601SW收音机
2021/03/02 无线电
基于simple_html_dom的使用小结
2013/07/01 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
PHP生成条形码大揭秘
2015/09/24 PHP
PHP多进程编程实例详解
2017/07/19 PHP
js常用排序实现代码
2010/12/28 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
jquery中html、val与text三者属性取值的联系与区别介绍
2013/12/29 Javascript
jquery事件重复绑定的快速解决方法
2014/01/03 Javascript
js设置function参数默认值(适合没有传参情况)
2014/02/24 Javascript
jQuery中DOM树操作之复制元素的方法
2015/01/23 Javascript
基于JS实现textarea中获取动态剩余字数的方法
2016/05/25 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
微信小程序 视图层(xx.xml)和逻辑层(xx.js)详细介绍
2016/10/13 Javascript
jQuery使用Layer弹出层插件闪退问题
2016/12/22 Javascript
Extjs表单输入框异步校验的插件实现方法
2017/03/20 Javascript
EasyUI中的dataGrid的行内编辑
2017/06/22 Javascript
vue数字类型过滤器的示例代码
2017/09/07 Javascript
jQuery响应滚动条事件功能示例
2017/10/14 jQuery
jQuery实现的简单无刷新评论功能示例
2017/11/08 jQuery
浅谈angular4实际项目搭建总结
2017/12/01 Javascript
微信小程序实现图片压缩功能
2018/01/26 Javascript
Angular使用动态加载组件方法实现Dialog的示例
2018/05/11 Javascript
JS对日期操作封装代码实例
2019/11/08 Javascript
[47:20]DAC2018 4.4 淘汰赛 Optic vs Mineski 第一场
2018/04/05 DOTA
简单文件操作python 修改文件指定行的方法
2013/05/15 Python
简单理解Python中基于生成器的状态机
2015/04/13 Python
详解Python中的__new__、__init__、__call__三个特殊方法
2016/06/02 Python
python如何在终端里面显示一张图片
2016/08/17 Python
Python3实现统计单词表中每个字母出现频率的方法示例
2019/01/28 Python
在keras中model.fit_generator()和model.fit()的区别说明
2020/06/17 Python
浅析PyCharm 的初始设置(知道)
2020/10/12 Python
Python列表的深复制和浅复制示例详解
2021/02/12 Python
在浏览器端如何得到服务器端响应的XML数据
2012/11/24 面试题
工艺工程师岗位职责
2014/03/04 职场文书
酒店优秀员工推荐信
2015/03/24 职场文书