크기 및 위치
09. 요소 속성 : 크기 및 위치 : element.getBoundingClientRect : 요소의 크기 및 위치 값
마우스 커서 요소의 크기와 위치 정보를 얻고, 마우스 이동 이벤트를 감지하여 마우스 커서를 따라 이동시킵니다.
{
// 선택자
const mouseCursor = document.querySelector(".mouse__cursor");
const rect = mouseCursor.getBoundingClientRect();
window.addEventListener("mousemove", e => {
gsap.to(".mouse__cursor", {
duration : 0.5,
// left : e.pageX - mouseCursor.clientWidth/2,
// top : e.pageY - mouseCursor.clientHeight/2
left : e.pageX - rect.width/2,
top : e.pageY - rect.height/2
});
});
console.log(rect);
}
mouseCursor 요소의 크기와 위치 정보를 rect 변수에 저장합니다.
mousemove 이벤트를 window 객체에 추가하여 마우스 이동을 감지합니다.
GSAP의 gsap.to() 메서드를 사용하여 마우스 커서 요소인 ".mouse__cursor"를 부드럽게 이동시킵니다.
e.pageX와 e.pageY는 마우스 이벤트의 현재 페이지 내 위치를 나타냅니다.
left와 top 속성을 사용하여 마우스 커서를 이동시킵니다. rect.width와 rect.height를 사용하여 마우스 커서 요소의 크기를 고려합니다.
duration은 이동 애니메이션의 지속 시간을 설정합니다.