使用easydrag實現可拖動的DIV彈出框

業餘草發表於2016-02-19
最近在工作中遇到了jquery的easydrag外掛,我有一種相見恨晚的趕腳!easydrag極大的方法我們實現div彈框這個功能,使我愛不釋手!
在沒遇到easydrag外掛之前,想實現一個彈出框並不是一件輕而易舉的事情!
人們常說沒有不勞而獲的事情,但在編碼的世界中卻不是這樣。更多的開源框架方面了我們,也毒害了我們!

廢話少說,先看效果:

全部程式碼:

<!DOCTYPE HTML>
<html>
<head>
	<title>easydrag實現可拖動的DIV彈出框</title>
	<style>
		/* 重置瀏覽器預設樣式 */
		body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,form,img,dl,dt,dd,table,th,td,blockquote,fieldset,div,strong,label,em{margin:0;padding:0;border:0;}
		ul,ol,li{list-style:none;}
		input,button{margin:0;font-size:12px;vertical-align:middle;}
		body{font-size:12px;font-family:Arial, Helvetica, sans-serif; color:#333; margin:0 auto; }
		table{border-collapse:collapse;border-spacing:0;}
		a{ color:#333; text-decoration:none;}
		a:hover{ text-decoration:none;}

		.wrap{ width:960px; margin:20px auto;}
		.box{ display:none; background:#fff; border:1px solid #ccc; position:absolute;}

		#popbox{ width:550px;height:320px;overflow:hidden;}
		#handler{ width:98%; height:30px; line-height:30px; overflow:hidden; color:#fff; border-bottom:1px solid #ccc; background:#ccc; padding-left:2%; float:left;}
		.btn{ display:block; width:90px; height:28px; border:1px solid #ccc; line-height:28px; text-align:center; margin-right:20px; float:left; display:inline; margin-right:15px; cursor:pointer;}
		.close{ display:block; background:url(images/close.gif) no-repeat; width:13px; height:13px; float:right; text-indent:-999em; cursor:pointer; display:inline; margin:8px 12px 0 0;}
		.head i{ float:left; font-style:normal;}
		.content{ width:100%; float:left;}
		.content img{width:100%;}
	</style>
	<!-- 使用百度的jquery線上cdn -->
	<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
	<!-- easydrag.js沒有找到線上的cdn,大家可以自行下載 -->
	<script type="text/javascript" src="js/easydrag.js"></script>
	<script language="javascript">
		$(function(){
			//btn繫結click事件
			$('.btn').click(function(){
				//設定彈出框居中
				$('#popbox').css({
					left: ($(window).width() - $('#popbox').outerWidth())/2,
					top: ($(window).height() - $('#popbox').outerHeight())/2 + $(document).scrollTop()
				});
				$('#popbox').easydrag();	
				//淡入已隱藏的div
				$('#popbox').fadeIn();	
				$('#popbox').setHandler('handler');
				$('.close').click(function(){
					//淡出效果來隱藏彈出的div
					$('#popbox').fadeOut();
				});
			});	
		});
	</script>
</head>
<body>

<div class="wrap">
	<b class="btn">開啟彈出框</b>
	<div id="popbox" class="box">
		<div class="head" id="handler"><b class="close">關閉</b><i>點選標題位置進行拖動</i></div>
		<div class="content"><a href="http://blog.csdn.net/xmtblog/"><img src="images/img03.jpg" /></a></div>
	</div>
</div>
</body>
</html>

歡迎大家關注我的部落格,關注我的微博,如有疑問,請加qq群:454796847、135430763 共同進步!

相關文章