캔버스 요소를 기준으로 정확한 마우스 위치를 얻는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-04 10:17:02
원래의
580명이 탐색했습니다.

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

캔버스 요소를 기준으로 마우스 위치 감지

대화형 웹 개발 영역에서 일반적인 작업은 다음과 같이 특정 요소를 기준으로 마우스 커서의 위치를 ​​정확하게 결정하는 것입니다. 매력적인 그림 앱을 만들 수 있는 캔버스입니다.

이 문제에 대한 한 가지 접근 방식은 JavaScript의 getBoundingClientRect() 메서드의 강력한 기능을 활용하는 것입니다. 이 메서드는 문서 내의 요소 위치에 대한 중요한 정보를 제공하며 마우스 움직임을 추적하는 데 중요한 역할을 할 수 있습니다.

getBoundingClientRect()를 활용하여 문서에 상대적인 마우스 위치를 얻는 방법을 보여주는 다음 코드 조각을 고려해보세요. 요소:

<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>
로그인 후 복사

작동 방식은 다음과 같습니다.

  1. onclick 이벤트 리스너는 ID clickme가 있는 요소에 연결됩니다.
  2. 클릭하면 이벤트 리스너는 대상 요소의 경계 사각형 좌표("직사각형")를 추출합니다.
  3. 요소를 기준으로 마우스 커서의 x 및 y 좌표는 커서의 clientX에서 사각형의 왼쪽 및 위쪽 속성을 빼서 계산됩니다. 및 clientY 값.
  4. 이러한 좌표는 콘솔에 기록되므로 요소 내에서 마우스 위치를 관찰할 수 있습니다.

이 기술을 구현하면 다음을 수행할 수 있습니다. 캔버스 요소 내에서 마우스의 움직임을 정확하게 추적하여 상호작용적이고 매력적인 사용자 경험을 위한 가능성의 세계를 열어줍니다.

위 내용은 캔버스 요소를 기준으로 정확한 마우스 위치를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿