인프런 커뮤니티 질문&답변

dgh12님의 프로필 이미지
dgh12

작성한 질문수

초보자도 만들 수 있는 스크롤 인터렉션. 1편 자바스크립트

section 5 - set 3번에서 질문있습니다.

작성

·

260

0

선생님 안녕하세요!

궁금한게 있어서 글을 올렸습니다.

section5 의 set3 폴더의 index.html에서

parallaxMoveDistance = Math.max(parallaxStartValue - parallaxStartValue, Math.min(parallaxStartValue, parallaxStartValue - (parallaxStartValue * (parallaxPercent / 100))));

로 수식을 입력하셨는데 어떠한 이유로 저렇게 식을 사용하셨는지 궁금합니다.

계속 보다가 헷갈려서 도움의 손길을 요청합니다..ㅜ

답변 3

0

깡코딩님의 프로필 이미지
깡코딩
지식공유자

도움이 되셨다니

다행입니다 :D

또 다른 궁금증이 생길때 문의주세요 :)

0

dgh12님의 프로필 이미지
dgh12
질문자

오오 ..덕분에 아까보다 수월하게 이해가 됩니다ㅎㅎ 

친절하신 답변 감사드립니다 !

0

깡코딩님의 프로필 이미지
깡코딩
지식공유자

안녕하세요 dgh님 :D

수식 관련해서 궁금증이 생기셨나보네요

해당 수식은 주석의 내용과 같이 패럴럭스로 이동할 요소가 움직일 거리를 구하는 수식입니다.

해당 수식을 보게되면 parallaxMoveDistance 변수가 있는데요

이 변수에는 패럴럭스 요소가 시작할 위치값을 설정하도록 되어있습니다.

예를 들어 parallaxMoveDistance 값이 1000이라고 가정하겠습니다.

그렇다면 패럴럭스 요소는 1000위치부터 시작하겠죠??

그렇다면 종료될 위치는 어디일까요? 

종료할 위치는 parallaxStartValue - parallaxStartValue 즉 1000-1000 = 0

이 되는겁니다.

그렇다면 패럴럭스 요소들은 1000에서 시작해서 0에서 끝나도록 되는거죠!

그다음 수식을 살펴보면 먼저 함수 Math.min을 사용하여 패럴럭스 시작 위치의 최대 값이 parallaxStartValue인 1000보다 커지지 않도록 값을 구한 거구요 다시 한번 Math.max를 사용해 패럴럭스로 이동할 거리가 패럴럭스가 종료할 위치 즉 (parallaxStartValue - parallaxStartValue)0보다 작은 값이 나오지 않도록 값을 구한 겁니다.

간단하게 설명한다면 다음 수식을 사용하여 1000~0 사이의 값을 구해서 1000~0 만큼만 패럴럭스 요소가 이동하도록 만든 겁니다 :)

도움이 되셨나요??

그럼 다른 궁금증이 생길때 문의주세요 :D

dgh12님의 프로필 이미지
dgh12

작성한 질문수

질문하기