๐ก HTML๊ณผ JavaScript์ ํ์ ๊ตฌ์กฐ — ๋ธ๋ผ์ฐ์ ์ ๋ํ์ ์๋ฆฌ | ์ฝ๋ฉ์คํ๋ฉ Part 7
์๋
ํ์ธ์ ์ฝ๋ฌ์
๋๋ค ๐
์ค๋์ ์น ์ฝ๋ฉ์ ์ง์ง ์์์ !
HTML๊ณผ JavaScript๊ฐ ‘์ด๋ป๊ฒ ๋ํํ๋ฉฐ ์์ง์ด๋์ง’ ๋ฐฐ์๋ด
๋๋ค.
HTML์ ๋(ํ๋ฉด), JavaScript๋ ๋๋(ํ๋).
๋ ์ธ์ด๊ฐ ๋ง๋์ผ ‘์ด์ ์๋ ํ์ด์ง’๊ฐ ๋ง๋ค์ด์ ธ์.
HTML = ๊ตฌ์กฐ(structure)
CSS = ๋์์ธ(style)
JavaScript = ํ๋(action)
1️⃣ HTML์ด ํ๋ ์ผ — ‘๋ฌด๋’ ๋ง๋ค๊ธฐ
<div id="box">Hello, Corer!</div>
<button id="btn">ํด๋ฆญํ๋ฉด ์ ๋ฐ๋</button>
<script src="script.js"></script>
HTML์ ๋ฐฐ์ฐ๋ค์ด ์ค ๋ฌด๋๋ฅผ ๋ง๋ค์ด์. ๊ทธ๋ฆฌ๊ณ ๋ฒํผ, ํ ์คํธ, ์ ๋ ฅ์ฐฝ์ฒ๋ผ ‘์ญํ ’์ ๋ถ์ฌํ์ฃ . ํ์ง๋ง ์ค์ค๋ก ์์ง์ด์ง ๋ชปํฉ๋๋ค.
2️⃣ JavaScript๊ฐ ํ๋ ์ผ — ‘์์ง์’ ๋ง๋ค๊ธฐ
<script>
const box = document.getElementById("box");
const btn = document.getElementById("btn");
btn.addEventListener("click", () => {
box.style.color = "#1a73e8";
box.style.fontSize = "24px";
box.innerText = "ํด๋ฆญ ์ฑ๊ณต!";
});
</script>
JavaScript๋ HTML ์์๋ฅผ ์ฐพ์(getElementById)
์ด๋ฒคํธ๋ฅผ ๋ถ์ด๊ณ (addEventListener)
์์ฑ์ ๋ฐ๊พธ๋ฉฐ ‘๋ํ’๋ฅผ ์์ํฉ๋๋ค.
3️⃣ HTML ↔ JS ์ฐ๊ฒฐ์ ๊ตฌ์กฐ (DOM)
HTML ํ์ด์ง์ ๊ตฌ์กฐ๋ ํธ๋ฆฌ(Tree)์ฒ๋ผ ์๊ฒผ์ด์.
JavaScript๋ ๊ทธ ๋๋ฌด ์๋ฅผ ์์ ๋กญ๊ฒ ์์ง์ด๋ฉฐ ๊ฐ์ง๋ฅผ ๋ฐ๊พธ์ฃ .
document.body // ์ ์ฒด ๋ฌธ์
document.getElementById("btn") // ํน์ ๋ฒํผ
document.querySelector(".menu") // ํด๋์ค ์ ํ
์ด๋ฐ ๊ฑธ DOM(Document Object Model)์ด๋ผ๊ณ ๋ถ๋ฅด๊ณ , HTML๊ณผ JS์ ํ์ ์ ๋ฐ๋ก ์ด DOM ์์์ ์ผ์ด๋ฉ๋๋ค.
4️⃣ ์ ๋ ฅ → ์ฒ๋ฆฌ → ์ถ๋ ฅ (๋ฐ์ดํฐ ํ๋ฆ)
<input id="name" placeholder="์ด๋ฆ ์
๋ ฅ">
<button id="hello">์ธ์ฌํ๊ธฐ</button>
<div id="result"></div>
<script>
hello.onclick = function(){
const name = document.getElementById("name").value;
document.getElementById("result").innerText = `์๋
, ${name}!`;
}
</script>
์ด๋ฆ์ ์ ๋ ฅํ๋ฉด “์๋ , OOO๋!”์ด ๋์ค๋๋ก ๋ง๋ค์ด๋ณด์ธ์.
์ถ๊ฐ๋ก, ์ ๋ ฅ์ด ์์ผ๋ฉด “์ด๋ฆ์ ์ ๋ ฅํด์ฃผ์ธ์” ๋ฌธ๊ตฌ๋ฅผ ๋์๋ณด์ธ์!
❓ Q&A ์ฝ๋
Q1. HTML ์์ JS๋ฅผ ์จ๋ ๋๋์?
๐ ๋ค! ํ์ง๋ง ๊ท๋ชจ๊ฐ ์ปค์ง๋ฉด ๋ณ๋ ํ์ผ๋ก ๋ถ๋ฆฌํ๋ ๊ฒ ์ข์์ (script.js).
Q2. JS๊ฐ HTML๋ณด๋ค ๋ฆ๊ฒ ๋ก๋๋๋ฉด์?
๐ ํด๊ฒฐ๋ฒ: defer ์์ฑ ์ฌ์ฉ or window.onload ์์์ ์คํ.
Q3. ๋ฒํผ์ ์ฌ๋ฌ ๊ฐ ์ฐ๋ ค๋ฉด?
๐ querySelectorAll๋ก ๋ฌถ์ด์ ๋ฐ๋ณต๋ฌธ์ผ๋ก ์ด๋ฒคํธ๋ฅผ ๋ฌ๋ฉด ๋ฉ๋๋ค.
๐ ๋ค์ ๋จ๊ณ ์๊ณ
Part 8์์๋ “์ด๋ฒคํธ ๋ฃจํ์ ๋ฐ์ํ ์ธํฐ๋์
”์ผ๋ก ๋์ด๊ฐ์.
๋ธ๋ผ์ฐ์ ๊ฐ ํด๋ฆญ, ํค๋ณด๋, ์ ๋๋ฉ์ด์
์ ์ด๋ป๊ฒ ๋์์ ์ฒ๋ฆฌํ๋์ง
๊ฒ์ ๊ฐ๋ฐ์์ฒ๋ผ ๊น๊ฒ ํํค์ณ๋ด
์๋ค!


