js实现鼠标拖动功能


Posted in Javascript onMarch 20, 2017

效果图:

js实现鼠标拖动功能

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 <style type="text/css">
  #div{
  width: 200px;
  height: 200px;
  background: green;
  position: absolute;
  }
  #div2{
  width: 200px;
  height: 200px;
  background: gold;
  position: absolute;
  top: 200px;
  left: 200px;
  }
 </style>
 </head>
 <body>
 <div id="div">
 </div>
 <div id="div2"></div>
 <script>
  window.onload=function(){
  var div=document.getElementById("div");
  div.onmousedown=function(ev){
   var e=window.event || ev;
   //var Mydiv=document.getElementById("div");
   //获取到鼠标点击的位置距离div左侧和顶部边框的距离;
   var oX=e.clientX-div.offsetLeft;
   var oY=e.clientY-div.offsetTop;
   //当鼠标移动,把鼠标的偏移量付给div
   document.onmousemove=function(ev){
   //计算出鼠标在XY方向上移动的偏移量,把这个偏移量加给DIV的左边距和上边距,div就会跟着移动
   var e=window.event|| ev;
   div.style.left=e.clientX-oX+"px";
   div.style.top=e.clientY-oY+"px";
   }
   //当鼠标按键抬起,清除移动事件
   document.onmouseup=function(){
   document.onmousemove=null;
   document.onmouseup=null;
   }
  }
  var div2=document.getElementById("div2");
  div2.onmousedown=function(ev){
   var e=window.event || ev;
   //var Mydiv=document.getElementById("div");
   //获取到鼠标点击的位置距离div左侧和顶部边框的距离;
   var oX=e.clientX-div2.offsetLeft;
   var oY=e.clientY-div2.offsetTop;
   //当鼠标移动,把鼠标的偏移量付给div
   document.onmousemove=function(ev){
   //计算出鼠标在XY方向上移动的偏移量,把这个偏移量加给DIV的左边距和上边距,div就会跟着移动
   var e=window.event|| ev;
   div2.style.left=e.clientX-oX+"px";
   div2.style.top=e.clientY-oY+"px";
   }
   //当鼠标按键抬起,清除移动事件
   document.onmouseup=function(){
   document.onmousemove=null;
   document.onmouseup=null;
   }
  }
  }
 </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
Jquery Ajax学习实例4 向WebService发出请求,返回实体对象的异步调用
Mar 16 Javascript
div层的移动及性能优化
Nov 16 Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 Javascript
js如何获取兄弟、父类等节点
Jan 06 Javascript
jQuery找出网页上最高元素的方法
Mar 20 Javascript
javascript模拟评分控件实现方法
May 13 Javascript
js实现完美兼容各大浏览器的人民币大小写相互转换
Oct 29 Javascript
js编写贪吃蛇的小游戏
Aug 24 Javascript
jQuery查看选中对象HTML代码的方法
Jun 17 Javascript
Javascript从数组中随机取出不同元素的两种方法
Sep 22 Javascript
基于vue打包后字体和图片资源失效问题的解决方法
Mar 06 Javascript
基于JavaScript canvas绘制贝塞尔曲线
Dec 25 Javascript
基于vue2的table分页组件实现方法
Mar 20 #Javascript
详解Weex基于Vue2.0开发模板搭建
Mar 20 #Javascript
基于vue.js实现侧边菜单栏
Mar 20 #Javascript
微信小程序 参数传递实例代码
Mar 20 #Javascript
vue.js指令v-model使用方法
Mar 20 #Javascript
微信小程序中子页面向父页面传值实例详解
Mar 20 #Javascript
JS查找英文文章中出现频率最高的单词
Mar 20 #Javascript
You might like
自定义PHP分页函数
2006/10/09 PHP
PHP设计模式之代理模式的深入解析
2013/06/13 PHP
PHP开发中常用的十个代码样例
2016/02/02 PHP
微信红包随机生成算法php版
2016/07/21 PHP
PHP 5.6.11 访问SQL Server2008R2的几种情况详解
2016/08/08 PHP
硬盘浏览程序,保存成网页格式便可使用
2006/12/03 Javascript
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
javascript基于DOM实现权限选择实例分析
2015/05/14 Javascript
初探nodeJS
2017/01/24 NodeJs
javascript 中select框触发事件过程的分析
2017/08/01 Javascript
Node.js实现发送邮件功能
2017/11/06 Javascript
浅谈微信小程序列表埋点曝光指南
2019/10/15 Javascript
node省市区三级数据性能测评实例分析
2019/11/06 Javascript
JS寄快递地址智能解析的实现代码
2020/07/16 Javascript
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python发腾讯微博代码分享
2014/01/10 Python
分享Python字符串关键点
2015/12/13 Python
详解python之简单主机批量管理工具
2017/01/27 Python
Python 内置函数进制转换的用法(十进制转二进制、八进制、十六进制)
2018/04/30 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
把django中admin后台界面的英文修改为中文显示的方法
2019/07/26 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
python golang中grpc 使用示例代码详解
2020/06/03 Python
Smallable英国家庭概念店:设计师童装及家居装饰
2017/07/05 全球购物
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
历史专业个人求职信分享
2013/12/20 职场文书
银行职员个人的工作自我评价
2014/02/15 职场文书
《美丽的小兴安岭》教学反思
2014/02/26 职场文书
万能检讨书2000字
2014/10/17 职场文书
2014年园林绿化工作总结
2014/12/11 职场文书
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
Python基础数据类型tuple元组的概念与用法
2021/08/02 Python
详解 TypeScript 枚举类型
2021/11/02 Javascript
无线电通信名词解释
2022/02/18 无线电
Python通用验证码识别OCR库ddddocr的安装使用教程
2022/07/07 Python