width.html 548p

offsetWidth  , getBoundingClientRect ๋งŽ์ด ์”€

getBoundingClientRect : ํ•˜๋‚˜๋งŒ ๋ฝ‘์•„๋ณด๊ณ  ์‹ถ์œผ๋ฉด (). ๋’ค์— width, height ๋“ฑ ์ ์œผ๋ฉด ๋”ฐ๋กœ ์ถ”์ถœ๊ฐ€๋Šฅ

 

posion.html

getBoundingClientRect().top : ๋ธŒ๋ผ์šฐ์ € ์•ˆ์ชฝ ํŽ˜์ด์ง€ ๊ธฐ์ค€์œผ๋กœ ๋ฐ”๊นฅ ์—ฌ๋ฐฑ ์œ„์ชฝ

getBoundingClientRect().right : ๋ธŒ๋ผ์šฐ์ € ์™ผ์ชฝ๋ถ€ํ„ฐ ์š”์†Œ ์˜ค๋ฅธ์ชฝ๊นŒ์ง€์˜ ๊ฐ’

getBoundingClientRect().bottom : ๋ธŒ๋ผ์šฐ์ € ์œ„์ชฝ๋ถ€ํ„ฐ ์š”์†Œ ์•„๋ž˜์ชฝ๊นŒ์ง€์˜ ๊ฐ’

offset : ์ƒ์œ„ ์š”์†Œ ๊ธฐ์ค€, ์–ด๋–ค ํฌ์ง€์…˜์„ ์คฌ๋А๋ƒ ์— ๋”ฐ๋ผ ๊ฐ’์ด ๋‹ฌ๋ผ์ง, css ํฌ์ง€์…˜ ์ •์ฑ…๋Œ€๋กœ top, left ์œ„์น˜ ๊ฐ’ ๋ฐ›์•„์˜ด

 

pageYoffset , scrollY ๊ฐ™์Œ : ์Šคํฌ๋กค๋˜๊ณ  ๋ฌธ์„œ๊ฐ€ ์˜ฌ๋ผ๊ฐ„ ๋†’์ด

pageYoffset :

scrollY :

 

scrollbasic1.html

์ฝœ๋ฐฑํ•จ์ˆ˜

 

scrollbasic2.html

์Šคํฌ๋กค ์Šค๋ฌด์Šค๋ž‘ ์—†๋Š” ๊ฑฐ ๋น„๊ต

์Šคํฌ๋กค๋ฐ”์ด ํˆฌ ๋‘˜๋‹ค behavior: 'smooth' ์“ธ ์ˆ˜ ์žˆ์Œ

 

naviupdate-scroll.html

ํŽ˜์ด์ง€๊ฐ€ section box 1,2,3,4,5 ๊ฐ€ ํฌํ•จ๋˜์–ด ๊ธธ๊ฒŒ ๋˜์–ด ์žˆ์Œ ๊ทธ๋ž˜์„œ li ํ•˜๋‚˜ ๋ˆ„๋ฅผ ๋•Œ๋งˆ๋‹ค ๊ฐ box ์˜ ์ขŒํ‘œ๊ฐ€ ๋งž์ถฐ์ ธ์•ผ ํ•จ

๊ทธ๋ž˜์„œ getBoundingClientRect left top ์œผ๋กœ ๋ฐ›์•„์˜ค๋ฉด ๋จ

ํฌ์ธํŠธ ์ด๋ฒคํŠธ?

 

halloween-scroll.html

gnb ๋‚ด๋ ค๊ฐ€๋ฉด ์ƒ๋‹จ์— fix ํ•ด์ฃผ๊ณ  ๊ฐ section ์œผ๋กœ ์ด๋™ํ•˜๋„๋ก

function ํ–ˆ์œผ๋ฉด ์ƒ๊ด€์ด ์—†๋Š”๋ฐ const ๋กœ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ˜ธ์ด์ŠคํŒ…์ด ๋˜์ง€ ์•Š์•„์„œ ๋จผ์ € ๋ณ€์ˆ˜ํ•˜๊ณ  ํ˜ธ์ถœ

 css : .fix bottom:auto ๏ƒ  position:fixed ํ•ด์คฌ๊ธฐ ๋•Œ๋ฌธ์— bottom 0ํ•ด๋ฒ„๋ฆฌ๋ฉด ํŽ˜์ด์ง€ ๋งจ ๋ฐ‘๊นŒ์ง€ gnb ์˜์—ญ์œผ๋กœ ๋จ ๊ทธ๋ž˜์„œ auto ํ•ด์ค˜์„œ ์ปจํ…์ธ ๋งŒํผ ์žก๋„๋ก

 

naviscroll.html

 

window.html : ์ฐจ์ด

window : ์ „์—ญ๊ฐ์ฒด , ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ฐ€์žฅ ์ตœ์ƒ์œ„ ๊ฐ์ฒด , ๋ธŒ๋ผ์šฐ์ € ์‹คํ–‰๋์„ ๋•Œ ๊ฐ€์žฅ ๋จผ์ € ๋กœ๋”ฉ๋˜๋Š” ๊ฐ์ฒด , ์ฐฝ์œผ๋กœ๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒ๊ฐ ๊ฐ€๋Šฅ

document: ์œˆ๋„์šฐ ๊ฐ์ฒด ์•„๋ž˜์— ์œ„์น˜ ,

onload : ํŽ˜์ด์ง€๊ฐ€ ์—ด๋ ธ์„ ๋•Œ ์ด๋ฒคํŠธ, ๋ฒ„๋ธ”๋ง ๋•Œ๋ฌธ์— ๋‹ค ๋จน๊ธฐ ๋•Œ๋ฌธ์— ์œˆ๋„์šฐ๋‚˜ ๋„ํ๋จผํŠธ๋‚˜ ๋‹ค ์ ์šฉ๋จ

DOMContentLoaded : html ๋”ํŠธ๋ฆฌ์™€ ์Šคํฌ๋ฆฝํŠธ ๋’ค์— ์ฝ์–ด์˜ค๋Š” ๊ฒƒ, ์œˆ๋„์šฐ์—๋„ ์ ์šฉ ๊ฐ€๋Šฅ(์ด๋ฒคํŠธ ๋ฒ„๋ธ”๋ง ๋•Œ๋ฌธ์—)

 

์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ—ค๋“œ ์‚ฌ์ด์— ๋‹ฌ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚จ window.load

IntersectionObserver: ํ•ด๋‹น ๊ณต๊ฐ„ ์•ˆ์— ๋“ค์–ด๊ฐ„๊ฐ€๋ฉด ํŠน์ • ์ด๋ฒคํŠธ๋ฅผ ์‹คํ–‰

 

navi-img-scrollupdate.js

<script src="js/navi-img-scrollupdate.js" defer></script> : script ์— src ์ผ์„ ๋•Œ๋งŒ defer ์‚ฌ์šฉ ๊ฐ€๋Šฅ

์ด๋ฏธ์ง€ ๋„Œ ์‹œ์ผœ๋†”์„œ ํด๋ž˜์Šค ๋„ฃ์–ด์„œ ์Šคํฌ๋กค๋˜๋ฉด ์ด๋ฏธ์ง€ ๋‚˜์˜ค๋„๋ก

์ด๋ฏธ์ง€ ์—…์ด๋ผ๋Š” ํด๋ž˜์Šค ๋ถ™์œผ๋ฉด left 0 ์˜คํผ์‹œํ‹ฐ 1 ํŠธ๋žœ์ง€์…˜ left ์˜คํผ์‹œํ‹ฐ ๋‘˜๋‹ค ๋ถ€์—ฌ

๊ฐ section ์Šคํƒ€ํŠธ ์ง€์ ๊ณผ ์•ค๋“œ ์ง€์  ์ขŒํ‘œ ์•Œ์•„๋‚ด์•ผ ํ•จ ์‹œ์ž‘์  ํ”Œ๋Ÿฌ์Šค ๋†’์ด ํ•˜๋ฉด ๋์  ๋ญ๊ฐ€ ์ด ์•ˆ์— ์žˆ๋Š”์ง€ ๋”ฐ์ ธ์•ผ ํ•จ

+ Recent posts