๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์‹œ๋„/Code-States

[D+55] ๋‹ค์‹œ๊ณต๋ถ€ํ•œ๋‹ค... DOM....

by ๐Ÿ‡๋ฐ•๋ด‰๋ด‰๐Ÿ‡ 2020. 10. 31.

 

D+55

-  ๋‹ค์‹œ ๊ณต๋ถ€ํ•œ๋‹ค... DOM... -

( DOM ๋ณต์Šต )

 


 

 

์ด๋ฒˆ์— ์Šคํ”„๋ฆฐํŠธ ๊ณผ์ œ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ

DOM์„ ์ดํ•ดํ•˜๊ณ  ์žˆ์–ด์•ผ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋‚˜๊ฐ€๋Š”๋ฐ ์–ด๋ ค์›€์ด ์—†์—ˆ๊ฒ ์ง€๋งŒ

๋‚˜๋Š” DOM์— ๋Œ€ํ•œ ๋‚˜์˜ ๊ฐœ๋…์ด ๋„ˆ๋ฌด ๋ถ€์กฑํ•œ ๊ฒƒ ๊ฐ™์•„ DOM์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ณต๋ถ€๋ฅผ ํ•ด๋ณด์•˜๋‹ค.

 

์‚ฌ์‹ค ๋‹น์‹œ DOM์— ๋Œ€ํ•ด์„œ ๋ฐฐ์› ์„๋•Œ์—๋„ ๋ฌด์ฒ™์ด๋‚˜ ์–ด๋ ค์›Œํ–ˆ๊ณ 

์ดํ•ดํ•˜๊ธฐ๋ณด๋‹จ ๋‹ฌ๋‹ฌ๋‹ฌ ์™ธ์› ์œผ๋‹ˆ ์ด๋ฒˆ์— ์–ด๋ ค์šด๊ฑด ๋‹น์—ฐํ•˜๋‹ค.

 

์˜ค๋Š˜์€ ์ผ๋‹จ ๋จธ๋ฆฟ์† ์–ด๋”˜๊ฐ€์— ๋‚จ์•„์žˆ์„ DOM์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ์ƒ๊ธฐ์‹œํ‚ค๊ณ 

๊ทธ ์ดํ›„์—” ์‹œ๊ฐ„์„ ์ชผ๊ฐœ์„œ DOM๊ณผ์ œ๋ฅผ ๋‹ค์‹œํ•œ๋ฒˆ ๋ณต์Šตํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์กŒ๋‹ค.

 

 

๋จผ์ € ๋‚ด๊ฐ€ ์ž‘์„ฑํ–ˆ๋˜ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€์„ ๋ดค๋Š”๋ฐ

๊ณผ๊ฑฐ์˜ ๋‚˜.... ๋งŽ์ด ๋ชจ๋ฅด๊ณ  ์žˆ์—ˆ๊ตฌ๋‚˜ ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹

 

์ง„์งœ ๋”ฑ ๋ง๊ทธ๋Œ€๋กœ ๊ฐœ๋…๋งŒ ์ ๊ณ  ์ดํ•ด๋ฅผ ํฌ๊ธฐํ•œ ์•”๊ธฐ ์šฐ์„ ์˜ ๊ธ€์ด์—ˆ๋‹ค.

 

๊ทธ๋ž˜์„œ ์ผ๋‹จ์€ ๊ฐœ๋…์— ๋Œ€ํ•ด ์†์œผ๋กœ ์ง์ ‘ ์จ๋ณด๊ณ  ๊ธฐ๋ณธ์ ์ธ ์šฉ์–ด๋“ค์— ๋Œ€ํ•ด์„œ ์ตํ˜”๋‹ค.

 

 

๊ทธ ํ›„์— ์ฝ”์Šค์— ๊ฒŒ์‹œ๋˜์–ด์žˆ๋Š” ๊ฐ•์˜ ์˜์ƒ์„ ๋ณด๋ฉด์„œ ์ง์ ‘ ์ ์–ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์•˜๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ ์™ ์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ๋˜ ์ด์ „๊ณผ๋Š” ๋‹ฌ๋ฆฌ

์ด๋ฒˆ์—๋Š” ๊ธฐ๋ณธ์„ ์š”๊ตฌํ•˜๋Š” ๋‚ด์šฉ๋“ค์€ ๊ฝค ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค....

( ์ดํ•ด๊ฐ€์„œ ๋‹คํ–‰์ด์•ผ... ใ…œใ…œ ๐Ÿ˜‚)

 

์ž์‹ ๊ฐ์ด ํญ๋ฐœํ•ด์„œ ์ด์ „์— ํ’€์—ˆ๋˜ ๊ณผ์ œ๋“ค์„ ๋‹ค์‹œ ๋ณด์•˜๋Š”๋ฐ

๊ทธ๊ฒƒ๊นŒ์ง€๋Š” ์•„์ง ๋ฌด๋ฆฌ์ธ๊ฒƒ ๊ฐ™๋‹ค...ใ…Žใ…Žใ…Ž

 

์‹ฌํ™”์ ์ธ ๋ถ€๋ถ„๋“ค์€ ์ผ๋‹จ ๊ธฐ๋ณธ๊ฐœ๋…์„ ์ตํžŒ ํ›„์— 

ํ•ด๊ฒฐํ•˜๋„๋ก ํ•ด์•ผ๊ฒ ๋‹ค.

 

 


 

 

DOM

 

 

Document

dom์—์„œ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์กฐํšŒํ•  ๋•Œ ํ•ญ์ƒ document๋ผ๋Š” ์•„์ด๊ฐ€ ๋ถ™๋Š”๋ฐ

์ •ํ™•ํžˆ ์ด๊ฒŒ ์™œ ๋ถ™๋Š”์ง€์— ๋Œ€ํ•ด ๊ถ๊ธˆํ•ดํ•˜๊ธฐ๋งŒ ํ•˜๊ณ  ์ฐพ์•„๋ณด์ง„ ์•Š์•˜๋Š”๋ฐ ์•Œ์•„์•ผ ํ•  ๊ฒƒ ๊ฐ™์•„ ์ฐพ์•„๋ณด์•˜๋”๋‹ˆ

๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ถˆ๋Ÿฌ์˜จ ์›น ํŽ˜์ด์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ DOMํŠธ๋ฆฌ์˜ ์ง„์ž…์  ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

 

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์ฝ˜์†”์ฐฝ์— document๋ผ๊ณ  ์ž…๋ ฅํ•ด๋ณด๋ฉด html์— ๊ด€๋ จ๋œ ๋‚ด์šฉ๋“ค์ด ๋‚˜์˜ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ž์„ธํžˆ ๋” ํ™•์ธํ•˜๊ณ  ์‹ถ์œผ๋ฉด console.dir(document)๋ฅผ  ์ž…๋ ฅํ•ด๋ณด๋ฉด ๋œ๋‹ค.

 

์—˜๋ฆฌ๋จผํŠธ ํ™•์ธํ•˜๊ธฐ

์ž…๋ ฅ ๊ธฐ๋Šฅ
createElement ์—˜๋ฆฌ๋จผํŠธ ์ƒ์„ฑ
append / appendChild ์ž์‹์š”์†Œ ๋’ค์— ์—˜๋ฆฌ๋ฉ‘๋Š ์ฒจ๋ถ€ ( appendChild๋Š” ๋…ธ๋“œ๋„ ํฌํ•จ)
textContenct / innerHTML ์—˜๋ฆฌ๋จผํŠธ์•ˆ์˜ ํ…์ŠคํŠธ ๊ฐ’์„ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ์žฌํ• ๋‹นํ• ๋•Œ ์‚ฌ์šฉ
remove / removeChild ์—˜๋ฆฌ๋จผํŠธ ์‚ญ์ œ
getElementsByTagName ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ์—˜๋ฆฌ๋จผํŠธ ์กฐํšŒ
getElementById id๋ฅผ ํ†ตํ•ด ์—˜๋ฆฌ๋จผํŠธ ์กฐํšŒ
getElementsByClassName ํด๋ž˜์Šค ์ด๋ฆ„์„ ํ†ตํ•ด ์—˜๋ฆฌ๋จผํŠธ ์กฐํšŒ
querySelector / querySelectorAll ์—˜๋ฆฌ๋จผํŠธ ์กฐํšŒ

์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ๋ฐ”๊ฟ”์ค„ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๋“ค๋กœ ์ด๊ฒƒ๋“ค์€ ๋ณ€์ˆ˜์— ๋„ฃ์–ด ์‚ฌ์šฉํ•ด๋„ ๋œ๋‹ค.

 

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€