티스토리 뷰


	const circle = document.querySelector(".cursor").getBoundingClientRect();
        document.querySelector(".mouse__img").addEventListener("mousemove", (e) => {
            //커서
            gsap.to(".cursor", {duration: .2, left: e.pageX - circle.width/2, top: e.pageY - circle.height/2})
            //마우스 좌표 값
            let mousePageX = e.pageX;
            let mousePageY = e.pageY;


            //마우스 좌표 값을 가운데 초기화
            //전체 가로
            //window.innerWidth - 브라우저 크기
            //window.outerWidth - 브라우저 크기
            //window.screen.Width - 화면크기
            //window.screen.Height - 화면크기

            //마우스 좌표 값을 가운데 초기화
            //전체 길이/2 - 마우스 X좌표값 == 0
            let centerPageX = window.innerWidth/2 - mousePageX;
            let centerPageY = window.innerHeight/2 - mousePageY;

            let windowWidth = window.outerWidth;

            //이미지 움직이기
            const imgMove = document.querySelector(".mouse__img figure img");
            //imgMove.style.transform = "translate("+ centerPageX/20 +"px, "+ centerPageY/20+"px)";

            gsap.to(".mouse__img figure img", {duration: -.3, x: centerPageX/20, y: centerPageY/20});

            //출력
            // document.querySelector(".pageX").textContent = centerPageX;
            // document.querySelector(".pageY").textContent = centerPageY;
            document.querySelector(".mousePageX").textContent = mousePageX;
            document.querySelector(".mousePageY").textContent = mousePageY;
            document.querySelector(".centerPageX").textContent = centerPageX;
            document.querySelector(".centerPageY").textContent = centerPageY;
        })

자바스크립트를 이용하여 마우스 효과(mouse effect)를 주는 사이트 입니다.

이미지위에서 커서를 움직이면 커서 움직임에 따라 이미지가 움직이도록 만들었습니다.

이미지를 올린후 이미지가 보여지는 부분을 사이즈를 줄인후 고정시킵니다.

그 후에 스크립트로 마우스 위치에 따라 이미지가 움직이도록 설정해줍니다.

커서가 움직일때 기준점이 이미지의 중앙에 있어야 합니다.

let centerPageX = window.innerWidth/2 - mousePageX;

let centerPageY = window.innerHeight/2 - mousePageY

을 사용하여 기준점을 이미지 중앙에 위치하도록 해줘 기준점이 이미지 중앙에서 움직일수 있도록해줍니다.

 

 

마우스 이펙트

You always pass failure on the way to success. 성공하기까지는 항상 실패를 거친다.

parkjongho1.github.io

 

반응형

'Script Sample > Mouse Effect' 카테고리의 다른 글

MouseEffect - 텍스트 효과  (2) 2022.04.13
MouseEffect - 마우스효과2  (0) 2022.02.24
MouseEffect - getBoundingClientRect  (0) 2022.02.24
MouesEffect - gsap 사용  (0) 2022.02.24
Mouse Effect - getAttribute  (0) 2022.02.23
댓글
© 2022 babydevelop