最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

jQuery实现div跟随鼠标移动方法讲解

来源:动视网 责编:小OO 时间:2020-11-27 20:06:40
文档

jQuery实现div跟随鼠标移动方法讲解

重点是弄清楚如何获取鼠标现位置与移动后位置,p现在位置与移动后位置。用jQuery实现p随鼠标移动而移动,不是鼠标自身的位置。而是p相对于之前位置的移动。代码如下:(注意看绿色部分的解释)。
推荐度:
导读重点是弄清楚如何获取鼠标现位置与移动后位置,p现在位置与移动后位置。用jQuery实现p随鼠标移动而移动,不是鼠标自身的位置。而是p相对于之前位置的移动。代码如下:(注意看绿色部分的解释)。


本文主要为大家详细介绍了jQuery实现p跟随鼠标移动,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能帮助到大家。

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

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

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

<!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>
 <p class="aa"></p>
 </body>
</html>
<script>
 $(".aa").mousedown(function(e){
 //设置移动后的默认位置
 var endx=0;
 var endy=0;

 //获取p的初始位置,要注意的是需要转整型,因为获取到值带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要大写,必须大写!!

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

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

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

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

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

文档

jQuery实现div跟随鼠标移动方法讲解

重点是弄清楚如何获取鼠标现位置与移动后位置,p现在位置与移动后位置。用jQuery实现p随鼠标移动而移动,不是鼠标自身的位置。而是p相对于之前位置的移动。代码如下:(注意看绿色部分的解释)。
推荐度:
标签: 设置 详解 div
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top