Maison  >  Article  >  interface Web  >  Exemple de code de jQuery implémentant div pour suivre le mouvement de la souris

Exemple de code de jQuery implémentant div pour suivre le mouvement de la souris

PHPz
PHPzoriginal
2017-11-18 13:31:084126parcourir

Dans l'article précédent, nous avons analysé en détail l'exemple d'implémentation du suivi de la souris en JavaScript, nous allons donc aujourd'hui vous présenter le cas de jQuery implémentant DIV pour suivre le mouvement de la souris !

Le point clé est de comprendre comment obtenir la position actuelle et la position de la souris, la position actuelle et la position de p après le déplacement :

Utilisez jQuery pour réaliser que p se déplace avec le mouvement du souris, pas la position de la souris elle-même ! ! Mais le mouvement de p par rapport à la position précédente

Le code est le suivant : (faites attention à l'explication de la partie verte)

Pour plus de ressources sur les effets spéciaux, veuillez consulter au canal de téléchargement d'effets spéciaux php :Les effets de la souris

<!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>

sont différents du code suivant : (L'effet final est que p se déplace avec la position de la souris. Si vous voulez voir l'effet spécifique, vous pouvez coller, copier et comparer pour voir où se situe la différence)

  <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>

Résumé :

Cet article utilise un exemple de code pour présenter le cas de jQuery implémentant DIV pour suivre le mouvement de la souris. Je crois que mes amis, j'ai déjà une certaine compréhension de cela et j'espère que cela vous sera utile ~

<.>

Recommandations associées :

Une simple souris suivant l'effet d'invite basé sur JQuery

Implémentation de l'effet de suivi de la souris JavaScript

Js mouse follow code small hand click instance method

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn