Maison  >  Article  >  interface Web  >  Comment obtenir une position précise de la souris par rapport à un élément du canevas ?

Comment obtenir une position précise de la souris par rapport à un élément du canevas ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-04 10:17:02582parcourir

How to Get Accurate Mouse Position Relative to a Canvas Element?

Détection de la position de la souris par rapport à l'élément du canevas

Dans le domaine du développement Web interactif, une tâche courante consiste à déterminer avec précision la position du curseur de la souris par rapport à un élément spécifique, tel comme une toile sur laquelle vous pourriez créer une application de peinture captivante.

Une approche de ce défi exploite la puissance de la méthode getBoundingClientRect() de JavaScript. Cette méthode fournit des informations précieuses sur la position d'un élément dans le document et peut jouer un rôle crucial dans le suivi des mouvements de la souris.

Considérez l'extrait de code suivant qui montre comment utiliser getBoundingClientRect() pour obtenir la position de la souris par rapport à un élément :

<code class="javascript">document.getElementById('clickme').onclick = function(e) {
  // e = Mouse click event.
  var rect = e.target.getBoundingClientRect();
  var x = e.clientX - rect.left; //x position within the element.
  var y = e.clientY - rect.top;  //y position within the element.
  console.log("Left? : " + x + " ; Top? : " + y + ".");
};</code>

Voici comment cela fonctionne :

  1. L'écouteur d'événement onclick est attaché à l'élément avec l'ID clickme.
  2. Lorsque vous cliquez dessus, le L'écouteur d'événements extrait les coordonnées du rectangle englobant ("rect") de l'élément cible.
  3. Les coordonnées x et y du curseur de la souris, par rapport à l'élément, sont calculées en soustrayant les propriétés gauche et supérieure du rectangle du clientX du curseur. et clientY.
  4. Ces coordonnées sont ensuite enregistrées dans la console, vous permettant d'observer la position de la souris au sein de l'élément.

En mettant en œuvre cette technique, vous pourrez suivez avec précision les mouvements de la souris dans votre élément de canevas, ouvrant ainsi un monde de possibilités pour des expériences utilisateur interactives et engageantes.

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