本文实例讲述了jQuery实现点击按钮弹出可关闭层的浮动层插件。分享给大家供大家参考。具体如下:
这是一款由漫画Jquery弹出层插件改编而来,小鸟Js弹窗插件,按ESC可以关闭窗口。默认不带样式,大家可以根据自己的项目写样式。弹出层代码很小,min版的只1.15k,因为小所以值得应用。希望有网友可以再改进,希望她变得更小。
运行效果截图如下:
在线演示地址如下:
http://demo.VeVB.COm/js/2015/js-close-able-alert-dlg-plug-codes/
具体代码如下:
<!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程序设计有所帮助。
新闻热点
疑难解答