>웹 프론트엔드 >JS 튜토리얼 >JavaScript 페인팅 앱의 요소를 기준으로 마우스 위치를 어떻게 얻나요?

JavaScript 페인팅 앱의 요소를 기준으로 마우스 위치를 어떻게 얻나요?

DDD
DDD원래의
2024-11-02 21:38:021125검색

How Do I Get the Mouse Position Relative to an Element in a JavaScript Painting App?

페인팅 앱에서 요소를 기준으로 마우스 위치 찾기

요소를 기준으로 마우스 위치를 결정하는 것은 다음과 같은 대화형 애플리케이션을 만드는 데 중요합니다. 그림 앱으로요. 캔버스에서 이 작업을 수행하려면 올바른 JavaScript 코드를 사용해야 합니다.

해결책:

jQuery가 없는 솔루션은 쉽게 사용할 수 없었으므로 다음은 대안입니다. 접근 방식:

<code class="js">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>

사용법:

이 코드는 getBoundingClientRect() 메서드를 사용하여 문서를 기준으로 요소의 경계를 가져옵니다. 그런 다음 마우스 이벤트의 clientX 및 clientY 속성을 사용하여 요소 내의 마우스 위치를 계산합니다.

HTML 및 CSS:

코드를 테스트하려면 다음 HTML 및 CSS가 포함된 요소:

<code class="html"><div id="clickme">
  Click Me -<br>
  (this box has margin-left: 100px; margin-top: 20px;)
</div></code>
<code class="css">#clickme {
  margin-top: 20px;
  margin-left: 100px;
  border: 1px solid black;
  cursor: pointer;
}</code>

"Click Me" 요소를 클릭하면 콘솔에 요소의 왼쪽 상단을 기준으로 마우스 위치가 표시됩니다. 이 정보는 페인팅 애플리케이션 내에서 마우스 움직임과 상호 작용을 정확하게 캡처하는 데 필수적입니다.

위 내용은 JavaScript 페인팅 앱의 요소를 기준으로 마우스 위치를 어떻게 얻나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.