全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

使用javaScript实现鼠标拖拽事件

本文实例为大家分享了js实现鼠标拖拽事件的具体代码,供大家参考,具体内容如下

<html>
 <head>
  <meta charset="UTF-8">
  <title></title>

  <style>
   body{
    margin: 0;
    padding: 0;
   }
   div{
    position: absolute;
    top: 200px;/*div的y轴*/
    left: 150px;/*div的x轴*/
    width: 300px;
    height: 200px;
    background-color: gray;
   }
   div:hover{
    cursor: move;
   }
  </style>

  <script>

   /*
    * 分析:
    * 获取鼠标实时移动的坐标;m_move_x,m_move_y
    * 鼠标按下时的坐标;m_down_x,m_down_y
    * div的坐标;dx,dy
    * 鼠标按下时,鼠标与div的偏移量;md_x,md_y
    * div的新坐标;ndx,ndy
    */

   var isDown = false;//记录鼠标状态
   var move_div ;//要操作的div对象
   var m_move_x,m_move_y,m_down_x,m_down_y,dx,dy,md_x,md_y,ndx,ndy;

   //鼠标按下
   function down(){
    move_div = document.getElementById("move_div");
    isDown = true;

    //获取鼠标按下时坐标
    m_down_x = event.pageX;
    m_down_y = event.pageY;

    //获取div坐标
    dx = move_div.offsetLeft;
    dy = move_div.offsetTop;

    //获取鼠标与div偏移量
    md_x = m_down_x - dx;
    md_y = m_down_y - dy;
   }

   //鼠标移动
   function move(){
    move_div = document.getElementById("move_div");

    //实时更新div的坐标
    dx = move_div.offsetLeft;
    dy = move_div.offsetTop;

    //获取鼠标移动实时坐标
    m_move_x = event.pageX;
    m_move_y = event.pageY;

    //鼠标按下时移动才触发
    if(isDown){

     //获取新div坐标,鼠标实时坐标 - 鼠标与div的偏移量
     ndx = m_move_x - md_x;
     ndy = m_move_y - md_y;

     //把新div坐标值赋给div对象
     move_div.style.left = ndx+"px";
     move_div.style.top = ndy+"px";

    }

   }

   //鼠标释放
   function up(){
    isDown = false;
   }


  </script>

 </head>
 <body>

  <div id="move_div" onmousedown="down()" onmouseup="up()" onmousemove="move()"></div>

 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# js鼠标拖拽  # js鼠标拖拽事件  # js拖拽事件  # js实现拖拽效果  # 使用js实现的简单拖拽效果  # JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)  # JS实现的文件拖拽上传功能示例  # JS实现移动端触屏拖拽功能  # 前端原生js实现拖拽排课效果实例  # 鼠标  # 按下  # 偏移量  # 大家分享  # 具体内容  # 大家多多  # 拖拽  # 把新  # 坐标值  # 新坐标  # div  # position  # absolute  # background  # left  # margin  # padding  # width  # px  # top 


相关文章: 建站之星如何通过成品分离优化网站效率?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  东莞专业制作网站的公司,东莞大学生网的网址是什么?  香港服务器租用每月最低只需15元?  建站之星代理费用多少?最新价格详情介绍  如何获取开源自助建站系统免费下载链接?  建站之星如何快速解决建站难题?  建站之星安装步骤有哪些常见问题?  微信小程序 五星评分(包括半颗星评分)实例代码  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  如何通过虚拟机搭建网站?详细步骤解析  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何在橙子建站上传落地页?操作指南详解  如何在阿里云通过域名搭建网站?  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  寿县云建站:智能SEO优化与多行业模板快速上线指南  c# 在高并发下使用反射发射(Reflection.Emit)的性能  利用JavaScript实现拖拽改变元素大小  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  潮流网站制作头像软件下载,适合母子的网名有哪些?  如何快速配置高效服务器建站软件?  建站主机与服务器功能差异如何区分?  ui设计制作网站有哪些,手机UI设计网址吗?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  如何在IIS7上新建站点并设置安全权限?  已有域名和空间如何快速搭建网站?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  如何快速生成专业多端适配建站电话?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  如何挑选最适合建站的高性能VPS主机?  导航网站建站方案与优化指南:一站式高效搭建技巧解析  如何设置并定期更换建站之星安全管理员密码?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  小建面朝正北,A点实际方位是否存在偏差?  如何自定义建站之星模板颜色并下载新样式?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  建站上传速度慢?如何优化加速网站加载效率?  IOS倒计时设置UIButton标题title的抖动问题  建站主机空间推荐 高性价比配置与快速部署方案解析  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  电商网站制作公司有哪些,1688网是什么意思?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何彻底卸载建站之星软件?  建站之星安装提示数据库无法连接如何解决?  金*站制作公司有哪些,金华教育集团官网?  如何高效完成独享虚拟主机建站?  如何通过IIS搭建网站并配置访问权限?  C#如何使用XPathNavigator高效查询XML 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。