์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 | 31 |
- db
- ํ๋ค์ค๊ณต๋ถ
- ํ๋ค์ค
- ์น๋์๋ณด๋ ์ ์
- java
- ์๋ฐํ๋ก๊ทธ๋๋ฐ
- ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ
- ์๋ฐ์คํฌ๋ฆฝํธ ๊ณต๋ถ
- ์๋ฐ
- ์๋ฐ๊ณต๋ถ
- ํ์ด์ฌ
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์๋๋ก์ด๋ ์คํ๋์ค
- JavaScript
- ์๋ฐ์ด๋ณด
- serverless
- streamlit
- ํ์ด์ฌ๊ณต๋ถ
- Flutter
- RESTful API
- Android
- ์น๋์๋ณด๋ ๊ธฐ์ด
- ์คํธ๋ฆผ๋ฆฟ
- ์๋ฐ๊ธฐ์ด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- Streamlit๊ธฐ๋ณธ
- Streamlit๊ธฐ์ด
- ์คํธ๋ฆผ๋ฆฟ ๊ธฐ๋ณธ
- Pandas
- MySQL
- Today
- Total
ruriruriya
[JavaScript] ์๋ฐ์คํฌ๋ฆฝํธ - DOM์ด๋? ๋ณธ๋ฌธ
์๋ฐ์คํฌ๋ฆฝํธ์ DOM(Document Object Model)์ด๋? HTML ๋ฐ XML ๋ฌธ์์ ํ๋ก๊ทธ๋๋ฐ ์ธํฐํ์ด์ค์ด๋ค.
DOM์ ๋ฌธ์์ ๊ตฌ์กฐ์ ํํ์ ์ ๊ณตํ๊ณ ํ๋ก๊ทธ๋จ์ด ๋ฌธ์ ๊ตฌ์กฐ, ์คํ์ผ ๋ฐ ๋ด์ฉ์ ๋ณ๊ฒฝํ ์ ์๋๋ก ํ๋ค.
์น ํ์ด์ง๋ฅผ ๋ธ๋ผ์ฐ์ ์์ ๋ ๋๋งํ ๋, ๋ธ๋ผ์ฐ์ ๋ HTML ๋ฌธ์๋ฅผ DOM์ผ๋ก ๋ณํํ๋ค.
์ด DOM์ ๋ฌธ์์ ๋ชจ๋ ์์, ์์ฑ ๋ฐ ํ ์คํธ๋ฅผ ๋ ธ๋๋ก ๋ํ๋ด๋ ๊ณ์ธต์ ์ธ ํธ๋ฆฌ ๊ตฌ์กฐ์ด๋ค.
DOM์ ์ฃผ์ ๊ฐ๋
1. ๋ ธ๋
DOM์ ๊ธฐ๋ณธ ์์๋ก, ๋ฌธ์์ ๋ชจ๋ ๋ถ๋ถ(์์, ์์ฑ, ํ ์คํธ ๋ฑ)์ด ๋ ธ๋์ด๋ค. ๊ฐ ๋ ธ๋๋ ๋ค๋ฅธ ๋ ธ๋์ ๊ด๊ณ๋ฅผ ๊ฐ์ง๋ฉฐ, ์ด๋ฐ ๊ด๊ณ๋ ํธ๋ฆฌ ๊ตฌ์กฐ๋ก ํํ๋๋ค.
2. ์์ ๋ ธ๋
HTML ํ๊ทธ์ ํด๋นํ๋ ๋ ธ๋๋ก <.div>, <p>,<span> ๋ฑ์ด ์๋ค. ์์ ๋ ธ๋๋ ์์ฑ ๋ ธ๋์ ํ ์คํธ ๋ ธ๋๋ฅผ ํฌํจํ ์ ์๋ค.
3. ์์ฑ ๋ ธ๋
์์์ ์์ฑ์ ๋ํ๋ด๋ฉฐ, ์์ ๋ ธ๋์ ์ฐ๊ฒฐ๋๋ค.
4. ํ ์คํธ ๋ ธ๋
HTML ์์ ๋ด์ ์ค์ ํ ์คํธ๋ฅผ ํฌํจํ๋ ๋ ธ๋์ด๋ค.
DOM ์กฐ์
์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ DOM ์ ์กฐ์ํ์ฌ ์์๋ฅผ ์ถ๊ฐ/์ญ์ /์์ ํ๊ฑฐ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์ฐ๊ฒฝํ๋ ๋ฑ, ๋์ ์ผ๋ก ํ์ด์ง์ ๋ด์ฉ์ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ฌ์ฉ์์ ์ํธ์์ฉ์ ๋ฐ์ํ ์ ์๋ค.
[์์ ์ถ๊ฐ]
// ์๋ก์ด <p> ์์ ์์ฑ
var newParagraph = document.createElement("p");
var paragraphText = document.createTextNode("์๋
ํ์ธ์, DOM!");
newParagraph.appendChild(paragraphText);
// <body> ํ๊ทธ ์์ ์๋ก์ด <p> ์์ ์ถ๊ฐ
document.body.appendChild(newParagraph);
[์์ ์คํ์ผ ๋ณ๊ฒฝ]
// ํน์ ์์ ์ ํ
var myElement = document.getElementById("myElement");
// ์์์ ์คํ์ผ ๋ณ๊ฒฝ
myElement.style.color = "red";
[์ด๋ฒคํธ ๋ฆฌ์ค๋ ์ถ๊ฐ]
var button = document.getElementById("myButton");
button.addEventListener("click", function() {
alert("๋ฒํผ์ด ํด๋ฆญ๋์์ต๋๋ค!");
});