• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

offsetTop에 관한 설명이 잘 이해가 되지 않습니다.

20.06.29 23:16 작성 조회수 174

0

안녕하세요

현재 getBoundingClientTop 대신 offsetTop을 쓰는 부분에 관한 영상을 보고 있는데,

몇 번을 다시 봐도 이해가 잘 가지 않습니다.

왜 우리가 offsetTop값이 아니라 scale로 조정된 값이 필요하고, offsetTop은 왜 612라는 값을 나오는 것인 지 모르겠습니다.

좀 더 쉽게 다시 한 번 부가 설명해주시면 감사하겠습니다.

답변 2

·

답변을 작성해보세요.

1

612는 캔버스의 offsetTop 값입니다. 즉 3번 섹션의 맨 위를 0이라고 했을때, 캔버스는 위로부터 612 픽셀만큼 떨어져서 위치해있다는 이야기지요.
그 612라는 값을 그대로 쓰지 않고 캔버스가 줄어든만큼 다시 계산해준 이유는
offsetTop 자체가 원래 transform의 영향을 받지 않는 값이기 때문입니다.

원래의 캔버스 크기를 그대로 사용한다면 612를 그대로 쓰면 되겠지만,
우리가 사용하는 캔버스는 이미 transform scale로 크기를 조정한 상태이기 때문에
크기가 조정된 캔버스가 떨어진 거리를 정확하게 구하기 위해서
캔버스에 scale이 조정된(줄어든) 크기 만큼 612라는 offsetTop 값도 조정을 해준 것이지요~

0

dongri님의 프로필

dongri

질문자

2020.06.30

이제 이해가 되는 것같습니다! 감사합니다~