jQuery实现div跟随鼠标移动

 更新时间:2020年08月20日 15:15:18   作者:小鱼小鱼加油吐泡泡  
这篇文章主要为大家详细介绍了jQuery实现div跟随鼠标移动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

重点是弄清楚如何获取鼠标现位置与移动后位置,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>

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

相关文章

  • layui文件上传实现代码

    layui文件上传实现代码

    这篇文章主要为大家详细介绍了layui导航栏效果的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • jQuery中extend函数详解

    jQuery中extend函数详解

    这篇文章主要介绍了jQuery中extend函数详解的相关资料,需要的朋友可以参考下
    2015-07-07
  • JQuery AJAX操作代码

    JQuery AJAX操作代码

    jQuery底层AJAX实现,其返回其创建的XMLHttpRequest对象,大多数情况下无需直接操作该函数,除非需要操作不常用的选项,以获得更多的灵活性,这篇文章给大家介绍JQuery AJAX操作代码,感兴趣的朋友一起看看吧
    2022-12-12
  • jQuery+ajax+asp.net获取Json值的方法

    jQuery+ajax+asp.net获取Json值的方法

    这篇文章主要介绍了jQuery+ajax+asp.net获取Json值的方法,涉及jQuery的ajax技术与asp.net后台交互的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • jQuery实现手势解锁密码特效

    jQuery实现手势解锁密码特效

    这篇文章主要为大家详细介绍了jQuery实现手势解锁密码特效,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 7个有用的jQuery代码片段分享

    7个有用的jQuery代码片段分享

    这篇文章主要介绍了7个有用的jQuery技巧分享,本文给出了在新窗口打开链接、设置等高的列、jQuery预加载图像、禁用鼠标右键、设定计时器等实用代码片段,需要的朋友可以参考下
    2015-05-05
  • jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)

    jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)

    jQuery模拟百度新闻不间断滚动效果并且支持文字、图片水平垂直滚动等等,感兴趣的朋友可以了解下,或许本文所提供的案例对你学习jquery特效有所帮助,好了话不多说,切入正题
    2013-02-02
  • 详谈jQuery.load()和Jsp的include的区别

    详谈jQuery.load()和Jsp的include的区别

    下面小编就为大家带来一篇详谈jQuery.load()和Jsp的include的区别。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Jquery on方法绑定事件后执行多次的解决方法

    Jquery on方法绑定事件后执行多次的解决方法

    下面小编就为大家带来一篇Jquery on方法绑定事件后执行多次的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • jQuery中选择器的基础使用教程

    jQuery中选择器的基础使用教程

    jQuery的选择器非常强大,使你可以轻松选取页面中任何一个对象,下面我们就主要针对DOM操作来看一下jQuery中选择器的基础使用教程,需要的朋友可以参考下
    2016-05-05

最新评论