鼠标的拖拽效果(html+css+js)

效果如下:可以随意的移动这个窗口
在这里插入图片描述
代码如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			body{margin: 0;}
			.box{
				width: 400px;height: 300px;border: 5px solid #eee;box-shadow: 2px 2px 2px 2px #666;
				position: absolute;top: 30%;left: 20%;
				
			}
			.hd{width: 100%;height: 25px;background-color: #7c9299;border-bottom: 1px solid #369;line-height: 25px;color: #fff;
	            cursor: move;		
			}
			#box_close{float: right;cursor: pointer;}
		</style>
	</head>
	<body>
		<div id="box" class="box">
			<div id="drop" class="hd">
			     注册信息(可以拖拽)
				 <span id="box_close">
				 	【关闭】
				 </span>
				 
			</div>
			<div class="bd">
				
			</div>
		</div>
		
		<script type="text/javascript">
			//获取被拖动的盒子和拖动条
			var box=document.getElementById('box');
			var drop=document.getElementById('drop');
			drop.onmousedown=function(event){//鼠标在拖动条上移动盒子
				var event=event||window.event;
				//获取鼠标按下时的位置
				var pageX=event.pageX||event.clientX+document.documentElement.scrollLeft;
				var pageY=event.pageY||event.clientY+document.documentElement.scrollTop;
				//计算鼠标按下的位置距盒子的位置
				var spaceX=pageX-box.offsetLeft;
				var spaceY=pageY-box.offsetTop;
				//鼠标移动的时候 获取鼠标的位置 整个和盒子更跟着鼠标的位置走
				document.onmousemove=function(event){
					
					var event=event||window.event;
					
					var pageX=event.pageX||event.clientX+document.documentElement.scrollLeft;
					var pageY=event.pageY||event.clientY+document.documentElement.scrollTop;
					
					box.style.left=pageX-spaceX+'px';
					box.style.top=pageY-spaceY+'px';
					
					window.getSelection?window.getSelection().removeAllRanges():document.selection.empty();
					
				};
			};
			
			
			document.onmouseup=function(){//释放鼠标按键是  取消盒子的移动
				document.onmousemove=null;
			};
		</script>
		
	</body>
</html>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值