JS 鼠标拖拽元素移动
代码示例
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>Document</title> <style> #wrap { width: 100px; height: 100px; background-color: green; position: absolute; left: 100px; top: 100px; z-index: 100; } </style> </head> <body> <div id="wrap"></div> </body> <script> //鼠标拖拽移动 //1.为div绑定鼠标事件 //2.将鼠标坐标点与div定位位置进行关联 wrap.onmousedown = function (e) { console.log(e); var e = e || window.event; //获取按下的位置 var w = e.clientX; var h = e.clientY; console.log('获取按下的位置', 'clientX', w, 'clientY', h); //获得是鼠标按下时相对于元素的位置 var ex = w - wrap.offsetLeft; var ey = h - wrap.offsetTop; document.onmousemove = function (h) { var h = h || window.event; var w1 = h.clientX; var h1 = h.clientY; console.log('onmousemove', 'w1', w1, 'h1', h1); wrap.style.left = (w1 - ex) + "px"; wrap.style.top = (h1 - ey) + "px"; } } wrap.onmouseup = function () { document.onmousemove = null; } </script> </html>
效果预览
原文链接

作者:LiangSenCheng小森森 开源分享汇 公众号
出处:https://www.cnblogs.com/LiangSenCheng/p/17936254.html
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有问题或建议请联系作者,非常感谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!