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 相关文章推荐
JavaScript给url网址进行encode编码的方法
Mar 18 Javascript
jquery实现鼠标滑过后动态图片提示效果实例
Aug 10 Javascript
jQuery+css实现的换页标签栏效果
Jan 27 Javascript
浅析BootStrap栅格系统
Jun 07 Javascript
javascript中json基础知识详解
Jan 19 Javascript
AngularJS实现动态添加Option的方法
May 17 Javascript
关于在vue-cli中使用微信自动登录和分享的实例
Jun 22 Javascript
angularJs 表格添加删除修改查询方法
Feb 27 Javascript
jQuery实现网页拼图游戏
Apr 22 jQuery
JS 封装父页面子页面交互接口的实例代码
Jun 25 Javascript
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
原生JavaScript实现五子棋游戏
Nov 09 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
追求程序速度,而不是编程的速度
2008/04/23 PHP
《PHP编程最快明白》第七讲:php图片验证码与缩略图
2010/11/01 PHP
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
关于PHP的相似度计算函数:levenshtein的使用介绍
2013/04/15 PHP
浅谈php+phpStorm+xdebug配置方法
2015/09/17 PHP
php抽象方法和抽象类实例分析
2016/12/07 PHP
mac pecl 安装php7.1扩展教程
2019/10/17 PHP
js loading加载效果实现代码
2009/11/24 Javascript
30个最佳jQuery Lightbox效果插件分享
2011/04/11 Javascript
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
JS高级调试技巧:捕获和分析 JavaScript Error详解
2014/03/16 Javascript
JavaScript获取页面中第一个锚定文本的方法
2015/04/03 Javascript
HTML5使用DeviceOrientation实现摇一摇功能
2015/06/05 Javascript
javascript结合Flexbox简单实现滑动拼图游戏
2016/02/18 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
2016/05/27 Javascript
BootStrap入门教程(一)之可视化布局
2016/09/19 Javascript
微信小程序 删除项目工程实现步骤
2016/11/10 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
JavaScript实现的商品抢购倒计时功能示例
2017/04/17 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
JS数组去重常用方法实例小结【4种方法】
2018/05/28 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
[01:52]DOTA2完美大师赛Vega战队趣味视频——kpii老师小课堂
2017/11/25 DOTA
python去掉字符串中重复字符的方法
2014/02/27 Python
通过代码实例展示Python中列表生成式的用法
2015/03/31 Python
python 爬取微信文章
2016/01/30 Python
Django模板变量如何传递给外部js调用的方法小结
2017/07/24 Python
Python机器学习库scikit-learn安装与基本使用教程
2018/06/25 Python
对Python中 \r, \n, \r\n的彻底理解
2020/03/06 Python
python 实现仿微信聊天时间格式化显示的代码
2020/04/17 Python
Python实现列表索引批量删除的5种方法
2020/11/16 Python
使用canvas压缩图片大小的方法示例
2019/08/02 HTML / CSS
学生打架检讨书
2014/02/14 职场文书
安全生产承诺书
2014/03/26 职场文书
党员对照检查材料
2014/09/22 职场文书
《金肉人》米特&《航海王》阿鹤声优松岛实因胰脏癌去世 享寿81岁
2022/04/13 日漫