JS实现的简单拖拽功能示例
作者:继续去踢波
这篇文章主要介绍了JS实现的简单拖拽功能,涉及javascript鼠标事件响应及页面元素属性动态操作相关技巧,需要的朋友可以参考下
本文实例讲述了JS实现的简单拖拽功能。分享给大家供大家参考,具体如下:
1、实例代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>js实现拖拽</title> <style> #water{ width:400px; height:188px; background-color: #ff6600; } #water:hover{ cursor: pointer; } </style> </head> <body> <div id="water"></div> <script> dragInit("water");//调用 //拖拽初始化 function dragInit(id){ var $div = document.getElementById(id); var style = { position: "absolute", left: "0", top: "0" } for(var k in style){ $div.style[k] = style[k];//设置关键css } $div.onmousedown = function(e){//鼠标按键按下 e = e || window.event; var x = e.clientX - $div.offsetLeft;//鼠标到左上角的距离信息, 固定不变 var y = e.clientY - $div.offsetTop; document.onmousemove = function(e){//鼠标移动 e = e || window.event; var L = e.clientX - x; var T = e.clientY - y; var pW = document.documentElement.clientWidth;//页面宽度 var pH = document.documentElement.clientHeight; var divW = $div.offsetWidth;//Dom宽度 var divH = $div.offsetHeight; // 范围限定 if(L < 0){ L = 0; } if(T < 0){ T = 0; } if(L > pW - divW){ L = pW - divW; } if(T > pH - divH){ T = pH - divH; } // 范围限定 end $div.style.left = L + "px"; $div.style.top = T + "px"; }; document.onmouseup = function(e){//鼠标按键松开 document.onmousemove = null; }; }; } </script> </body> </html>
2、运行效果图如下:
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript切换特效与技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript查找算法技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript错误与调试技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
您可能感兴趣的文章:
- JQuery Dialog(JS 模态窗口,可拖拽的DIV)
- js实现拖拽效果
- Javascript拖拽系列文章2之offsetLeft、offsetTop、offsetWidth、offsetHeight属性
- javascript支持firefox,ie7页面布局拖拽效果代码
- 关于js拖拽上传 [一个拖拽上传修改头像的流程]
- js完美的div拖拽实例代码
- javascript拖拽上传类库DropzoneJS使用方法
- 鼠标拖拽移动子窗体的JS实现
- 使用js实现的简单拖拽效果
- js 表格排序(编辑+拖拽+缩放)
- js最简单的拖拽效果实现代码
- Javascript拖拽系列文章1之offsetParent属性
- js拖拽一些常见的思路方法整理
- javascript实现移动端上的触屏拖拽功能