console
document.addEventListener('DOMContentLoaded', function() {
const dragArea = document.getElementById('dragArea');
let isDragging = false;
let startX, startY;
dragArea.addEventListener('mousedown', function(e) {
if (e.button === 0) {
isDragging = true;
startX = e.clientX;
startY = e.clientY;
dragArea.style.cursor = 'grab';
}
});
dragArea.addEventListener('mousemove', function(e) {
if (isDragging) {
dragArea.style.cursor = 'grabbing';
const deltaX = e.clientX - startX;
const deltaY = e.clientY - startY;
let top = parseFloat(dragArea.style.top) || 0
let left = parseFloat(dragArea.style.left) || 0
top += deltaY
left += deltaX
console.log('top',top)
dragArea.style.top = `${top}px`
dragArea.style.left = `${left}px`
console.log(`Moved ${deltaX}px horizontally and ${deltaY}px vertically`);
startX = e.clientX;
startY = e.clientY;
}
});
dragArea.addEventListener('mouseup', function() {
if (isDragging) {
isDragging = false;
dragArea.style.cursor = 'default';
}
});
dragArea.addEventListener('mouseleave', function() {
isDragging = false;
dragArea.style.cursor = 'default';
});
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Drag Area</title>
<style>
#dragArea {
width: 300px;
height: 200px;
background-color: lightblue;
position: relative;
}
</style>
</head>
<body>
<div id="dragArea"></div>
<script src="script.js"></script>
</body>
</html>
#dragArea{
position: fixed;
left:0;
top:20px;
}