jQuery实现div跟随鼠标移动


Posted in jQuery onAugust 20, 2020

重点是弄清楚如何获取鼠标现位置与移动后位置,div现在位置与移动后位置:

用jQuery实现div随鼠标移动而移动,不是鼠标自身的位置!!而是div相对于之前位置的移动

代码如下:(注意看绿色部分的解释)

<!DOCTYPE html>
<html>
 <head>
  <meta charset="{utf-8}">
  <title></title>
  <script src="../jquery-3.2.0.js"></script>
  <style>
   .aa{
    height: 100px;
    width: 200px;
    position: absolute;
    background-color: green;
   }
  </style>
 </head>
 <body>
  <div class="aa"></div>
 </body>
</html>
<script>
 $(".aa").mousedown(function(e){
  //设置移动后的默认位置
  var endx=0;
  var endy=0;

  //获取div的初始位置,要注意的是需要转整型,因为获取到值带px
  var left= parseInt($(".aa").css("left"));
  var top = parseInt($(".aa").css("top"));

  //获取鼠标按下时的坐标,区别于下面的es.pageX,es.pageY
  var downx=e.pageX;
  var downy=e.pageY;  //pageY的y要大写,必须大写!!

  // 鼠标按下时给div挂事件
 $(".aa").bind("mousemove",function(es){

  //es.pageX,es.pageY:获取鼠标移动后的坐标
  var endx= es.pageX-downx+left;  //计算div的最终位置
  var endy=es.pageY-downy+top;

  //带上单位
  $(".aa").css("left",endx+"px").css("top",endy+"px") 
 }); 
 })
 

 $(".aa").mouseup(function(){
  //鼠标弹起时给div取消事件
  $(".aa").unbind("mousemove")
 })
 
</script>

区别于下面这段代码:(最终实现效果是div随鼠标位置移动,具体效果想看的可以粘贴复制对比看看差距在哪)

<script>
$(".aa").mousedown(function(e){
 $(document).bind("mousemove",function(e){
  $(".aa").css("left",e.pageX).css("top",e.pageY)
 });
})
 $(".aa").mouseup(function(){
  $(document).unbind("mousemove")
 })
 </script>

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

jQuery 相关文章推荐
jquery实现静态搜索功能(可输入搜索文字)
Mar 28 jQuery
jQuery EasyUI之验证框validatebox实例详解
Apr 10 jQuery
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
Apr 28 jQuery
jquery实现提示语淡入效果
May 05 jQuery
jQuery实现的简单动态添加、删除表格功能示例
Sep 21 jQuery
jQuery实现滚动效果
Nov 17 jQuery
jQuery实现炫丽的3d旋转星空效果
Jul 04 jQuery
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
jQuery实现的页面弹幕效果【测试可用】
Aug 17 jQuery
jQuery实现消息弹出框效果
Dec 10 jQuery
Jquery ajax书写方法代码实例解析
Jun 12 jQuery
JS+JQuery实现无缝连接轮播图
Dec 30 jQuery
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
May 15 #jQuery
Jquery把获取到的input值转换成json
May 15 #jQuery
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 #jQuery
jQuery返回定位插件详解
May 15 #jQuery
jQuery操作css样式
May 15 #jQuery
jQuery插件FusionCharts绘制的2D条状图效果【附demo源码】
May 13 #jQuery
jQuery插件FusionCharts绘制的2D双柱状图效果示例【附demo源码】
May 13 #jQuery
You might like
解析thinkphp的左右值无限分类
2013/06/20 PHP
php项目中百度 UEditor 简单安装调试和调用
2015/07/15 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
PHP让数组中有相同值的组成新的数组实例
2017/12/31 PHP
PHP fclose函数用法总结
2019/02/15 PHP
Laravel使用模型实现like模糊查询的例子
2019/10/24 PHP
JQuery下的Live方法和$.browser方法使用代码
2010/06/02 Javascript
Jquery网页内滑动缓冲导航的实现代码
2015/04/05 Javascript
js点击按钮实现带遮罩层的弹出视频效果
2015/12/19 Javascript
js 连续赋值的简单实现
2016/06/13 Javascript
JavaScript 节流函数 Throttle 详解
2016/07/04 Javascript
vue中slot(插槽)的介绍与使用
2018/11/12 Javascript
JQuery属性操作与循环用法示例
2019/05/15 jQuery
vue 中的动态传参和query传参操作
2020/11/09 Javascript
elementUI同一页面展示多个Dialog的实现
2020/11/19 Javascript
Python导入txt数据到mysql的方法
2015/04/08 Python
python发送邮件实例分享
2017/07/28 Python
pytorch + visdom 处理简单分类问题的示例
2018/06/04 Python
Python Numpy库安装与基本操作示例
2019/01/08 Python
pytorch掉坑记录:model.eval的作用说明
2020/06/23 Python
浅析Python面向对象编程
2020/07/10 Python
Python如何读取、写入CSV数据
2020/07/28 Python
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
html5简介_动力节点Java学院整理
2017/07/07 HTML / CSS
英国领先的电子、技术和办公用品购物网站:Ebuyer
2018/04/04 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
将相和教学反思
2014/02/04 职场文书
研修第一天随笔感言
2014/02/15 职场文书
酒店总经理职务说明书
2014/02/26 职场文书
铅球加油稿100字
2014/09/26 职场文书
员工教育培训协议书
2014/09/27 职场文书
八达岭长城导游词
2015/01/30 职场文书
中秋节祝酒词
2015/08/12 职场文书
诗词赏析-(浣溪沙)
2019/08/13 职场文书
Vue elementUI表单嵌套表格并对每行进行校验详解
2022/02/18 Vue.js
MySQL的意向共享锁、意向排它锁和死锁
2022/07/15 MySQL