浅谈jQuery实现拖拽

<!doctype html>
<html>
	<head>
		<style type="text/css">
			#box{
				position:fixed;
				left:100px;
				top:100px;
				background-color:red;
				width:300px;
				height:200px;
			}
			#out{
				height:2000px;
			}
		</style>
		<script src="js/jquery-1.8.2.min.js"></script>
		<script>
			$(document).ready(function(){
				var drafting=false; 
				var offX,offY,mouseX,mouseY,winX,winY,x,y;
				$("#box").mousedown(function(event){
					event.stopPropagation();
					drafting=true;
				});
				$(document).mousemove(function(event){
					event.stopPropagation();
					var e=event||window.event;
					mouseX=e.pageX||e.clientX+$(document).scrollLeft();
					mouseY=e.pageY||e.clientY+$(document).scrollTop();
					winX=$("#box").offset().left-$(document).scrollLeft();
					winY=$("#box").offset().top-$(document).scrollTop();
					if(drafting==false){
						offX=mouseX-winX;
						offY=mouseY-winY;
					}
					x=mouseX-offX;
					y=mouseY-offY;
					$("#box").css({'left':x,'top':y});
				});
				$(document).mouseup(function(event){
					event.stopPropagation();
					drafting=false;
				});	
			});
		</script>
	</head>
	<body>
		<div id="box"></div>
		<div id="out"></div>
	</body>
</html>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值