jQuery实现点击按钮弹出可关闭层的浮动层插件


Posted in Javascript onSeptember 19, 2015

本文实例讲述了jQuery实现点击按钮弹出可关闭层的浮动层插件。分享给大家供大家参考。具体如下:

这是一款由漫画Jquery弹出层插件改编而来,小鸟Js弹窗插件,按ESC可以关闭窗口。默认不带样式,大家可以根据自己的项目写样式。弹出层代码很小,min版的只1.15k,因为小所以值得应用。希望有网友可以再改进,希望她变得更小。

运行效果截图如下:

jQuery实现点击按钮弹出可关闭层的浮动层插件

在线演示地址如下:

具体代码如下:

<!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>
<title>jquery实现可拖动弹出层特效</title>
<script src="jquery-1.6.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
function popWin(a){function n(){var a=k?k:document.body,b=a.scrollHeight>a.clientHeight?a.scrollHeight:a.clientHeight,c=a.scrollWidth>a.clientWidth?a.scrollWidth:a.clientWidth;$("#maskLayer").css({height:b,width:c})}var d,e,b=9e3,c=!1,f=$("#"+a),g=f.width(),h=f.height(),i=f.find(".tit"),j=f.find(".close"),k=document.documentElement,l=($(document).width()-f.width())/2,m=(k.clientHeight-f.height())/2;f.css({left:l,top:m,display:"block","z-index":b- -1}),i.mousedown(function(a){c=!0,d=a.pageX-parseInt(f.css("left")),e=a.pageY-parseInt(f.css("top")),f.css({"z-index":b- -1}).fadeTo(50,.5)}),i.mouseup(function(){c=!1,f.fadeTo("fast",1)}),$(document).mousemove(function(a){if(c){var b=a.pageX-d;0>=b&&(b=0),b=Math.min(k.clientWidth-g,b)-5;var i=a.pageY-e;0>=i&&(i=0),i=Math.min(k.clientHeight-h,i)-5,f.css({top:i,left:b})}}),j.live("click",function(){$(this).parent().parent().hide().siblings("#maskLayer").remove()}),$('<div id="maskLayer"></div>').appendTo("body").css({background:"#000",opacity:".4",top:0,left:0,position:"absolute",zIndex:"8000"}),n(),$(window).bind("resize",function(){n()}),$(document).keydown(function(a){27==a.keyCode&&($("#maskLayer").remove(),f.hide())})}
</script>
<style type="text/css">
body{margin:0; padding:0;font-size:12px;}
dt{padding:10px;}
p{ height:100px; line-height:100px; border:1px solid #eee; margin:10px; }
i{ font-style:normal;}
#detail{ position:absolute;width:400px;height:200px;border:1px solid #ccc;background:#efefef; display:none;}
#detail .tit{ background:#ddd; display:block; height:33px; cursor:move;}
#detail .tit i{ float:right; line-height:33px; padding:0 8px;cursor:default;}
#detail2{position:absolute;width:300px;height:100px;border:1px solid #555;background:#555;display:none;}
#detail2 .tit{ background:#333; display:block; height:33px;cursor:move;}
#detail2 .tit i{ float:right; line-height:33px; padding:0 8px; color:#777; cursor:default;}
</style>
</head>
<body>
<br /><br />
<center>
<dl>
<dt><button id="t1">点我弹一个</button></dt>
 <dt><button id="t2">点我再弹一个</button></dt>
</dl>
</center>
<div id="detail">
<div class="tit"><i class="close">关闭</i></div>
</div>
<div id="detail2">
<div class="tit"><i class="close">关闭</i></div>
再弹出一个窗
</div>
<script type="text/javascript">
 $("#t1").click(function(){
   popWin("detail");
 });
 $("#t2").click(function(){
   popWin("detail2");
 });
</script>
<div style="text-align:center;margin:50px 0; font:normal 14px/24px 'MicroSoft YaHei';">
</div>
</body>
</html>

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

Javascript 相关文章推荐
js 多种变量定义(对象直接量,数组直接量和函数直接量)
May 24 Javascript
让IE6支持min-width和max-width的方法
Jun 25 Javascript
jQuery中需要注意的细节问题小结
Dec 06 Javascript
jQuery中addClass()方法用法实例
Jan 05 Javascript
jQuery遍历页面所有CheckBox查看是否被选中的方法
Apr 14 Javascript
JavaScript变量的作用域全解析
Aug 14 Javascript
jquery自定义插件开发之window的实现过程
May 06 Javascript
JS动态添加选项案例分析
Oct 17 Javascript
JS给按钮添加跳转功能类似a标签
May 30 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
Oct 28 jQuery
vue登录注册及token验证实现代码
Dec 14 Javascript
JavaScript中MutationObServer监听DOM元素详情
Nov 27 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
Sep 19 #Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
Sep 19 #Javascript
JS实现的不规则TAB选项卡效果代码
Sep 18 #Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
Sep 18 #Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
Sep 18 #Javascript
jQuery采用连缀写法实现的折叠菜单效果
Sep 18 #Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
Sep 18 #Javascript
You might like
smarty实例教程
2006/11/19 PHP
超级简单的php+mysql留言本源码
2009/11/11 PHP
php 来访国内外IP判断代码并实现页面跳转
2009/12/18 PHP
php 转换字符串编码 iconv与mb_convert_encoding的区别说明
2011/11/10 PHP
利用PHP将部分内容用星号替换
2020/04/21 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
神奇的代码 通杀各种网站-可随意修改复制页面内容
2008/07/17 Javascript
20个最新的jQuery插件
2012/01/13 Javascript
js String对象中常用方法小结(字符串操作)
2012/01/27 Javascript
基于jquery的bankInput银行卡账号格式化
2012/08/22 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
jQuery查找节点方法完整实例
2016/09/13 Javascript
KnockoutJS 3.X API 第四章之数据控制流foreach绑定
2016/10/10 Javascript
Javascript 引擎工作机制详解
2016/11/30 Javascript
JS实现无缝循环marquee滚动效果
2017/05/22 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
微信小程序scroll-view实现字幕滚动
2018/07/14 Javascript
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
JQuery特殊效果和链式调用操作示例
2019/05/13 jQuery
pandas 将list切分后存入DataFrame中的实例
2018/07/03 Python
pytorch中tensor的合并与截取方法
2018/07/26 Python
python使用thrift教程的方法示例
2019/03/21 Python
Python中函数的返回值示例浅析
2019/08/28 Python
pytorch常见的Tensor类型详解
2020/01/15 Python
美国派对用品及装饰品网上商店:Shindigz
2016/07/30 全球购物
三陽商会官方网站:Sanyo iStore
2019/05/15 全球购物
师范教师大学生职业生涯规划范文
2014/01/05 职场文书
秋季运动会稿件
2014/01/30 职场文书
参观接待方案
2014/03/17 职场文书
房地产经营管理专业自荐信
2014/09/02 职场文书
2015年招聘工作总结
2014/12/12 职场文书
2015年植树节活动总结
2015/02/06 职场文书
升职自荐信怎么写
2015/03/05 职场文书
2015年前台接待工作总结
2015/05/04 职场文书
公司安全管理制度范本
2015/08/05 职场文书
导游词之绍兴柯岩古镇
2020/01/09 职场文书