Event

๊น€์ฝฉ์€ยท2022๋…„ 3์›” 28์ผ
0

๐Ÿ“š ๋ธŒ๋ผ์šฐ์ € ์ด๋ฒคํŠธ


๋ชจ๋“  DOM ๋…ธ๋“œ๋Š” ์ด๋ฒคํŠธ๋ฅผ ๋งŒ๋“ค์–ด ๋‚ธ๋‹ค.


๐Ÿ’ก ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ


์ด๋ฒคํŠธ์— ๋ฐ˜์‘ํ•˜๋ ค๋ฉด ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์‹คํ–‰๋˜๋Š” ํ•จ์ˆ˜์ธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ• ๋‹นํ•ด์•ผ ํ•œ๋‹ค.


โž– ํ•ธ๋“ค๋Ÿฌ ํ• ๋‹น ๋ฐฉ๋ฒ•

<input value="click!" onclick="alert('click!')" type="button">
<input id="elem" type="button" value="click!">

<script>
	elem.onclick = function() {
    	alert('hello');
    }
</script>
  1. HTML ์†์„ฑ
    ๋ธŒ๋ผ์šฐ์ €๋Š” ์†์„ฑ๊ฐ’์„ ์ด์šฉํ•ด ์ƒˆ๋กœ์šด ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  DOM ํ”„๋กœํผํ‹ฐ์— ํ• ๋‹นํ•œ๋‹ค.

  2. DOM ํ”„๋กœํผํ‹ฐ


๐Ÿ“ข onclick ํ”„๋กœํผํ‹ฐ๋Š” ๋‹จ ํ•˜๋‚˜๋ฐ–์— ์—†๊ธฐ ๋•Œ๋ฌธ์—, ๋ณต์ˆ˜์˜ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†๋‹ค. (๋ฎ์–ด์”Œ์›Œ์ง)

๐Ÿ“ข setAttribute๋กœ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†๋‹ค. ์†์„ฑ์€ ํ•ญ์ƒ ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ, ํ•จ์ˆ˜๊ฐ€ ๋ฌธ์ž์—ด์ด ๋˜์–ด๋ฒ„๋ฆฐ๋‹ค.


โž– this


ํ•ธ๋“ค๋Ÿฌ ๋‚ด๋ถ€์— ์“ฐ์ธ this์˜ ๊ฐ’์€ ํ•ธ๋“ค๋Ÿฌ๊ฐ€ ํ• ๋‹น๋œ element์ด๋‹ค.

<button onclick='alert(this.innerHTML)'>ํด๋ฆญํ•ด ์ฃผ์„ธ์š”.</button>
// ๋ฒ„ํŠผ ์•ˆ์˜ ์ฝ˜ํ…์ธ ๊ฐ€ ์ถœ๋ ฅ๋œ๋‹ค.

๐Ÿ’ก addEventListener


HTML ์†์„ฑ๊ณผ DOM ํ”„๋กœํผํ‹ฐ๋ฅผ ์ด์šฉํ•˜๋ฉด ํ•˜๋‚˜์˜ ์ด๋ฒคํŠธ์— ๋ณต์ˆ˜์˜ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.

ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํŠน๋ณ„ํ•œ ๋ฉ”์„œ๋“œ์ธ addEventListener์™€ removeEventListener๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•ธ๋“ค๋Ÿฌ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๋‹ค.

profile
์ฝฉ๋”ฉ์ค‘

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด