νλ‘κ·Έλλ° νκ³ μλ μμ€ν μμ μΌμ΄λλ μ¬κ±΄(action) λλ λ°μ(occurrence)
1. μ΄λ²€νΈ νΈλ€λ¬ νλ‘νΌν°
const btn = document.querySelector("button");
btn.onclick = function () {
const rndCol =
"rgb(" + random(255) + "," + random(255) + "," + random(255) + ")";
document.body.style.backgroundColor = rndCol;
};
2. μΈλΌμΈ μ΄λ²€νΈ νΈλ€λ¬ β λλλ‘ μ°μ§ λ§μ
<button onclick="bgChange()">Press me</button>
function bgChange() {
const rndCol =
"rgb(" + random(255) + "," + random(255) + "," + random(255) + ")";
document.body.style.backgroundColor = rndCol;
}
const buttons = document.querySelectorAll("button");
for (let i = 0; i < buttons.length; i++) {
buttons[i].onclick = bgChange;
}
3. addEventListener()
λ©μλ μ¬μ©
const btn = document.querySelector("button");
function bgChange() {
const rndCol =
"rgb(" + random(255) + "," + random(255) + "," + random(255) + ")";
document.body.style.backgroundColor = rndCol;
}
btn.addEventListener("click", bgChange);
addEventListener()
μ μ΄λ²€νΈ νΈλ€λ¬ νλ‘νΌν°μ μ°¨μ΄addEventListener()
: μ΄λ²€νΈ νΈλ€λ¬κ° κ³μ μΆκ°λλ κ°λ
μΆκ°μ μΈ κΈ°λ₯κ³Ό μ 보λ₯Ό μ 곡νκΈ° μν΄ μ΄λ²€νΈ νΈλ€λ¬μ μλμΌλ‘ μ λ¬λλ κ°μ²΄
function bgChange(e) {
const rndCol =
"rgb(" + random(255) + "," + random(255) + "," + random(255) + ")";
e.target.style.backgroundColor = rndCol;
console.log(e);
}
btn.addEventListener("click", bgChange);
target
νλ‘νΌν° : νμ μ΄λ²€νΈκ° λ°μλ μμμ λν μ°Έμ‘°target
κ³Ό currentTarget
μ μ°¨μ΄currentTarget
: μ΄λ²€νΈ νΈλ€λ¬κ° λΆμ°©λ μμtarget
: μ€μ μ΄λ²€νΈκ° λ°μνλ μμ<form>
<div>
<label for="fname">First name: </label>
<input id="fname" type="text" />
</div>
<div>
<label for="lname">Last name: </label>
<input id="lname" type="text" />
</div>
<div>
<input id="submit" type="submit" />
</div>
</form>
<p></p>
const form = document.querySelector("form");
const fname = document.getElementById("fname");
const lname = document.getElementById("lname");
const para = document.querySelector("p");
form.onsubmit = function (e) {
if (fname.value === "" || lname.value === "") {
e.preventDefault();
para.textContent = "You need to fill in both names!";
}
};
λ μ΄λ²€νΈ νΈλ€λ¬κ° ν μμμ μλλμμ λ λ¬΄μ¨ μΌμ΄ μΌμ΄λλμ§λ₯Ό κΈ°μ νλ 맀컀λμ¦
λ²λΈλ§κ³Ό μΊ‘μ²λ§μ λ°λ κ°λ
1. λ²λΈλ§
<html>
μμμ λΏμ λκΉμ§ κ³μν¨2. μΊ‘μ²λ§
<html>
)μ΄ μΊ‘μ²λ§ λ¨κ³μ λν΄ κ·Έκ²μ λ±λ‘λ μ΄λ²€νΈ νΈλ€λ¬κ° μλμ§ νμΈνκΈ° μν΄ κ²μ¬νκ³ , λ§μ½ κ·Έλ λ€λ©΄ μ€νν¨<html>
λ΄λΆμ μλ λ€μ μμλ‘ μ΄λνκ³ κ°μ μΌμ νκ³ , κ·Έλ¦¬κ³ μ κ·Έ λ€μ μμλ‘ μ΄λνκ³ ... μ€μ λ‘ μ νλ μμμ λΏμ λκΉμ§ κ³μν¨μ΄λ²€νΈ λ²λΈλ§ λ° μΊ‘μ²λ§μ μ°¨λ¨νλ €λ©΄
event.stopPropagation()
μ¬μ©
λ§μ½ λ€μμ μμ μμ μ€ νλλ₯Ό μ ννμ λ μ½λλ₯Ό μ€ννκΈ°λ₯Ό μνλ€λ©΄,
λͺ¨λ μμμ κ°λ³μ μΌλ‘ μ΄λ²€νΈ 리μ€λλ₯Ό μ€μ ν΄μΌλ§ νλ κ² λμ μ,
μ΄λ²€νΈ 리μ€λλ₯Ό κ·Έλ€μ λΆλͺ¨μ μ€μ νκ³ κ·Έλ€μκ²μ μΌμ΄λ μ΄λ²€νΈκ° λΆλͺ¨μκ²κΉμ§ μ¬λΌμ€κ² ν μ μλ€λ μ¬μ€μ μμ‘΄
<ul id="parent-list">
<li id="post-1">Item 1</li>
<li id="post-2">Item 2</li>
<li id="post-3">Item 3</li>
<li id="post-4">Item 4</li>
<li id="post-5">Item 5</li>
<li id="post-6">Item 6</li>
</ul>
li
λ₯Ό λλ μ λ μ΄λ²€νΈκ° λμν μ μκ² νκ³ μΆλ€λ©΄?li
νκ·Έμ μΌμΌμ΄ μ΄λ²€νΈ νΈλ€λ¬λ₯Ό μΆκ°νλ 건 μ’μ λ°©λ²μ΄ μλ μ μλ€!// Get the element, add a click listener...
document.getElementById("parent-list").addEventListener("click", function(e) {
// e.target is the clicked element!
// If it was a list item
if(e.target && e.target.nodeName == "LI") {
// List item found! Output the ID!
console.log("List item ", e.target.id.replace("post-", ""), " was clicked!");
}
});
νμ¬ νΌλΈλ¦¬μ λΆκ»μ.. νλ‘ νΈμλ κ°λ°μμ μ λ§ κΈ°λ³Έμ...
html css + javascript μ΄κ² νΌνΌν΄μΌ μ΄λ€ 컀μ€ν ν νλ©΄μ λ§λ€λλΌλ, μ ν μ μλ€κ³ νλλΌκ΅¬μ
γ γ
μ΄λ° κΈ°λ³ΈκΈ° λ€μ§λ κ² κ΅Ώμ λλ€... γ γ