Partage
  • Partager sur Facebook
  • Partager sur Twitter

Obtenir position du curseur de la souris

Avec IE et Firefox

    7 juin 2007 à 18:58:20

    Bonjour,
    bien que j'ai cherché sur Google, je n'ai pas trouvé de réponse claire à ma question, qui est "Comment obtenir la position x et y du curseur de la souris avec IE et Firefox sans passer par les évènements ou je ne sais quoi d'autre."
    Merci !
    • Partager sur Facebook
    • Partager sur Twitter
      7 juin 2007 à 19:19:41

      Bonsoir,

      pourrais-tu expliquer ce que tu veux faire afin de pouvoir mieux t'aider...
      Sinon si tu veux connaître la position de ta souris sur ton écran avec Firefox, installes l'extension ColorZilla qui outre la possibilité de connaître le code couleur correspondant à l'emplacement de ta souris te donne également ses coordonnées x et y.

      • Partager sur Facebook
      • Partager sur Twitter
        7 juin 2007 à 19:21:22

        function EmplacementPointeur(Evenement){
                if(!document.all){
                        CurseurX = Evenement.clientX;
                        CurseurY = Evenement.clientY;
                }
                else {
                        CurseurX = event.x + document.body.scrollLeft;
                        CurseurY = event.y + document.body.scrollTop;   
                }
                alert(CurseurX+' / '+CurseurY);
        }


        à appeler de cette manière :
        <div onmousemove="EmplacementPointeur(event);"></div>
        • Partager sur Facebook
        • Partager sur Twitter

        Ma vraie biographie - Ex-Manager de la Validation sur le Site du Zéro - sdlm.be - Horus.aero

          7 juin 2007 à 19:38:18

          Merci beaucoup !
          Et si je souhaite connaître la position du curseur de la souris par rapport à un élément (un div, par exemple ?)
          Merci !
          • Partager sur Facebook
          • Partager sur Twitter
            7 juin 2007 à 20:04:00

            Yop,

            Tu peux utiliser uniquement clientX (pour ie aussi), mais il faut penser à ajouter le scroll (dans tous les cas, même firefox en a besoin).
            Code cross-browser (enfin, je crois. Les body ou documentElement en fonction du doctype de la page):
            var sourisX = event.clientX + (document.body.scrollLeft || document.documentElement.scrollLeft);
            var sourisY = event.clientY + (document.body.scrollTop || document.documentElement.scrollTop);


            Pour connaître les coordonnées d'un élément, il faut utiliser les propriétés offsetLeft et offsetTop mais elles ne donnent pas les distances globales mais uniquement par rapport au parent (offsetParent), tu peux donc récupérer ça avec une boucle:
            var element; //= ...
            var eX = 0, eY = 0;
            while(element)
            {
              eX += element.offsetLeft;
              eY += element.offsetTop;
              element = element.offsetParent;
            }

            Ensuite, pour connaître les coordonnées de la souris par rapport à cet élément:
            sourisX - eX et sourisY - eY

            Voilà bonsoir ;)

            (en fait, je suis justement en train de rédiger un tuto là dessus ;p)
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              7 juin 2007 à 22:10:15

              @Boo2M0rs0 : moi qui allais en commencer un là dessus .... a toi l'honneur :D
              • Partager sur Facebook
              • Partager sur Twitter

              Obtenir position du curseur de la souris

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown