inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

몇 줄로 끝내는 인터랙티브 웹 개발 노하우 [초급편]

innerHeight

287

오디

작성한 질문수 30

0

왜 scrollHeight에서 innerHeight를 빼야하는지 잘 이해가 안돼요 ㅠㅠ

scrollTop이 현재 스크롤의 top위치?

scrollHeight가 진회색으로 칠해져있는 스크롤바의 높이?

innerHeight가 현재 보고 있는 화면의 높이?


라고 제가 이해한게 맞나요? 위가 맞다면 왜 스크롤바의 높이에서 화면높이를 빼는지 모르겠어요

인터랙티브-웹 javascript

답변 1

0

코딩일레븐

그 부분이 조금 헷갈리실 수도 있는데요. 

문서 길이가 1000px 인 페이지를 브라우저 700px로 띄워놓고 스크롤을 한다면

scrollTop 값은 0~300 까지만 나옵니다. 실제로 스크롤바는 그만큼만 움직이니까요.

브라우저를 900px 정도로 크게 띄워놓으면 스크롤바는 0~100까지만 움직이죠.

깔짝 깔짝. 

조금 움직이던, 많이 움직이던 우리는 0~100% 의 백분율 값이 필요합니다.

그래서 제대로된 백분율을 내기위해

1000px - 브라우저 height 값을 빼주는 겁니다.

백분율 값 = 스크롤탑 / (문서길이 - 브라우저 높이) * 100

scrollTop / (document.documentElement.scrollHeight - window.innerHeight) )* 100;

예시로 든 수치를 반영해보면

스크롤탑 / (1000 - 900) * 100 입니다.

이동 값 0~100 / (기준은 100 ) * 100

_

document.documentElement.scrollHeight  를 document.body.offsetHeight 로 

바꾸면 덜 헷갈리실까요? 바꾸셔도 결과는 같습니다.

html 문서 전체 길이에서 화면 높이 값을 빼주는 게 핵심입니다.

mouse position interpolation과 transition linear interpolation의 차이

0

95

1

mousemove 시 따라 다니는 커서 이미지 wheel 할 경우

0

206

2

부드러운 움직임 구현1 강의 부분 질문있습니다.

0

166

2

go live 실시간 크롬

0

337

1

javascript 도움말 vsCode 확장팩 문의!

0

379

1

블로그 상단 페럴렉스 효과 구현 질문 있습니다!

0

367

1

마우스 인터렉티브 변형 질문

0

350

1

안녕하세요. 수업 잘 듣고 있습니다. 포트폴리오 관련 질문도 가능할까요?

0

406

1

나비가 버튼위로올라가면 버튼의 hover기능이 멈춰버려요

0

356

1

perspective에 대해서

0

302

1

CSS에서 궁금했던 부분 -실전 페럴렉스 강의 부분

0

492

1

requestAnimationFrame 질문

0

371

1

리뉴얼 이전 강의 파일

0

452

1

코드가 미리보기로 보여주는 확장프로그램이 뭔가요?

0

755

1

수업 파일 부탁드립니다~

0

333

1

배경질문

0

360

1

textWrap의 position을 relative로 주는 것에 대해 질문있습니다!

0

299

1

safari에서 position fixed가 잘 동작하지 않습니다

0

987

1

addEventListener후에 익명함수 실행할때 뒤에 false는 어떤 역할을 하는건가요?

0

566

1

스피드 변수로 scrollTop을 두는 이유가 무엇인가요?

0

374

1

완성파일 어디서 받아볼 수 있나요 ?

0

439

1

완성 파일 요청 드립니다.

0

308

1

사진들이 상단 nav바를 침범하는데 침범 못하게 어떻게해야할까요?

0

157

1

리액트로 하면 어떻게 해야할지 작성해주실수있나요?

0

378

1