需求如下: 点击上方标题弹出对话框
然后弹出对话框
点击对话框,按住鼠标不松开的话可以拖动,一旦松开便不能拖动
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
h1{
margin: 0 40%;
}
.dialog{
position: absolute;
left: 500px;
top: 100px;
width: 400px;
height: 400px;
padding: 20px;
border: 1px solid black;
display: none;
}
</style>
</head>
<body>
<h1>点击,弹出登录框</h1>
<div class="dialog">
<p class="title">登录会员</p>
</div>
<script>
const h = document.querySelector('h1')
const Dialog = document.querySelector('.dialog')
h.addEventListener('click', function(){
Dialog.style.display = 'block'
})
//点击对话框
Dialog.addEventListener('mousedown', function(e){
//定义拖动函数(e是鼠标对象)
function move(e){
Dialog.style.top = e.pageY - 200 + 'px'
Dialog.style.left = e.pageX - 200 + 'px'
}
//监听鼠标移动
document.addEventListener('mousemove', move)
//监听鼠标松开
document.addEventListener('mouseup', function(){
document.removeEventListener('mousemove', move)
})
})
</script>
</body>
</html>