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 相关文章推荐
html5+javascript制作简易画板附图
Apr 25 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 Javascript
jQuery绑定事件监听bind和移除事件监听unbind用法实例详解
Jan 19 Javascript
jquery form表单获取内容以及绑定数据
Feb 24 Javascript
bootstrap模态框垂直居中效果
Dec 03 Javascript
jQuery文字轮播特效
Feb 12 Javascript
Vue异步组件使用详解
Apr 08 Javascript
JavaScript中严格判断NaN的方法
Feb 16 Javascript
JavaScript中set与get方法用法示例
Aug 15 Javascript
JavaScript常见继承模式实例小结
Jan 11 Javascript
解析JS在获取当前月的最后一天遇到的坑
Aug 30 Javascript
vue组件是如何解析及渲染的?
Jan 13 Vue.js
基于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中使用反射技术的架构插件使用说明
2010/05/18 PHP
PHP读取数据库并按照中文名称进行排序实现代码
2013/01/29 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
配置eAccelerator和XCache扩展来加速PHP程序的执行
2015/12/22 PHP
PHP implode()函数用法讲解
2019/03/08 PHP
php简单检测404页面的方法示例
2019/08/23 PHP
jQuery 剧场版 你必须知道的javascript
2009/05/27 Javascript
jQuery 幻灯片插件(带缩略图功能)
2011/01/24 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
node.js中express中间件body-parser的介绍与用法详解
2017/05/23 Javascript
vue-cli构建项目使用 less的方法
2017/10/04 Javascript
AngularJS表单验证功能
2017/10/19 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
bootstrap实现tab选项卡切换
2020/08/09 Javascript
js实现移动端轮播图滑动切换
2020/12/21 Javascript
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
python实现将pvr格式转换成pvr.ccz的方法
2015/04/28 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
python3实现表白神器
2019/04/09 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
2020/03/09 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
2020/07/02 Python
HTML5 Convas APIs方法详解
2015/04/24 HTML / CSS
香港莎莎官网Sasa.com:亚洲著名国际化妆品商城
2019/11/10 全球购物
公益活动策划方案
2014/01/09 职场文书
简单的辞职信范文
2014/01/18 职场文书
《锄禾》教学反思
2014/04/08 职场文书
推广普通话演讲稿
2014/05/23 职场文书
国家税务局干部作风整顿整改措施
2014/09/18 职场文书
群众路线教育实践活动实施方案
2014/10/31 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
教代会闭幕词
2015/01/28 职场文书
员工升职自荐信
2015/03/27 职场文书
Python insert() / append() 用法 Leetcode实战演示
2021/03/31 Python