ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ Œ๋”๋ง ๊ณผ์ •

1) DOM ํŠธ๋ฆฌ ์ƒ์„ฑ

2) ์Šคํƒ€์ผ ๊ตฌ์กฐ์ฒด ์ƒ์„ฑ

3) ๋ Œ๋” ํŠธ๋ฆฌ ์ƒ์„ฑ

4) ๋ ˆ์ด์•„์›ƒ ์ฒ˜๋ฆฌ

5) Paint

6) ํŽ˜์ด์ง€ ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ Reflow, Repaint๊ฐ€ ์ถ”๊ฐ€๋กœ ๋ฐœ์ƒ



reflow

์ƒ์„ฑ๋œ DOM ๋…ธ๋“œ์˜ ๋ ˆ์ด์•„์›ƒ(๋„ˆ๋น„, ๋†’์ด ๋“ฑ) ๋ณ€๊ฒฝ ์‹œ, ์˜ํ–ฅ๋ฐ›์€ ๋ชจ๋“  ๋…ธ๋“œ(์ž์‹, ๋ถ€๋ชจ ๋“ฑ)์˜ ์ˆ˜์น˜๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜์—ฌ ๋ Œ๋” ํŠธ๋ฆฌ๋ฅผ ์žฌ์ƒ์„ฑํ•˜๋Š” ์ž‘์—…


function reflow() {
	document.getElementById('test').style.width = '100px';
    return false;
}


repaint

Reflow ๊ณผ์ •์ด ๋๋‚œ ํ›„ ์žฌ์ƒ์„ฑ๋œ ๋ Œ๋” ํŠธ๋ฆฌ๋ฅผ ๋‹ค์‹œ ๊ทธ๋ฆฌ๋Š” ์ž‘์—….

์ˆ˜์น˜์™€ ์ƒ๊ด€์—†๋Š” background-color, visibillty, outline ๋“ฑ์˜ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ ์‹œ์—๋Š” Reflow ๊ณผ์ •์ด ์ƒ๋žต๋œ Repaint ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•จ.


function repaint() {
    document.getElementById('test').style.backgroundColor = 'red';
    return false;
}


reflow์™€ repaint๋Š” ๋ถ€ํ•˜๊ฐ€ ๋†’๊ธฐ ๋•Œ๋ฌธ์—, UX๋ฅผ ์•ˆ์ข‹๊ฒŒ ํ•˜๊ฑฐ๋‚˜ UI์˜ ๋ฐ˜์‘์ด ๋Š๋ ค์ง€๋Š” ์›์ธ์ด ๋œ๋‹ค.

ํŠนํžˆ reflow๊ฐ€ ๋” ๋ถ€ํ•˜๊ฐ€ ๋†’๊ธฐ๋•จ๋ฌธ์— DOM ์กฐ์ž‘ ์‹œ ์„ฑ๋Šฅ์„ ์—ผ๋‘ํ•œ ์ฝ”๋”ฉ์ด ํ•„์š”ํ•˜๋‹ค.

 

๋Œ“๊ธ€
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
ยซ   2024/04   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
๊ธ€ ๋ณด๊ด€ํ•จ