要实现模态框的拖拽
1.首先鼠标的拖拽时先按下鼠标且移动的时候才能实现拖拽
2.获取鼠标按下时的下的坐标减去距离边框的距离为x,y
3.获取鼠标移动时的x1,y1坐标
4.用x1-x,y1-y可以知道模态框left,top
代码如下:
<body>
<div class="login">
<div class="model">
<p>登录会员</p>
<span>用户名:</span><input type="text" ><br>
<span>登陆密码:</span><input type="password" ><br>
<button class="vip" style="margin:0 auto">登陆会员</button>
<div class="del">x</div>
</div>
</div>
<div class="login-head">点击,登录会员。。。</div>
<script>
var lo_h = document.querySelector('.login-head');
var del = document.querySelector('.del');
var model=document.querySelector('.model');
var login=document.querySelector('.login');
lo_h.onclick = function () {
this.style.display = 'none';
login.style.display = 'block';
model.style.display = 'block';
}
del.onclick= function(){
model.style.display='none';
}
model.addEventListener('mousedown',function(e){
var x=e.pageX - model.offsetLeft;
var y=e.pageY - model.offsetTop;
var move=function(e){
model.style.left=e.pageX-x+'px';
model.style.top=e.pageY-y+'px';
}
document.addEventListener('mousemove',move);
document.addEventListener('mouseup',function(e){
document.removeEventListener('mousemove',move)
});
});
</script>
</body>