์ด๋ฒคํธ ๋ฒ๋ธ๋ง(Event Bubbling)
- ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์์์์๋ถํฐ ์ต์์ ์์(Html)๋ก ์๋ก ์ฌ๋ผ๊ฐ์ ๋์ํ๋ ๊ฒ
- ๊ฐ์ฅ ์ต์๋จ์ ์กฐ์ ์์๋ฅผ ๋ง๋ ๋๊น์ง ๊ณผ์ ์ด ๋ฐ๋ณต๋๋ฉด์ ์์ ๊ฐ๊ฐ์ ํ ๋น๋ ํธ๋ค๋ฌ๊ฐ ๋์ํจ
- ๋ฒํผ์ ํด๋ฆญํ๋ฉด ํด๋ฆญ ์ด๋ฒคํธ๊ฐ ๋ฒํผ์์ ์์ํ์ฌ ๋ถ๋ชจ ์์๋ก ์ ํ
- ๊ฑฐ์ ๋ชจ๋ ์ด๋ฒคํธ๋ ๋ฒ๋ธ๋ง๋จ
- focus ์ด๋ฒคํธ์ ๊ฐ์ด ๋ฒ๋ธ๋ง ๋์ง ์๋ ์ด๋ฒคํธ๋ ์์
- +) ์๋ HTML์์๋ focus ์ด๋ฒคํธ๊ฐ ๋ฒ๋ธ๋ง๋์ง ์์ง๋ง, ๋ฆฌ์กํธ์์๋ focus ์ด๋ฒคํธ ๋ฒ๋ธ๋ง๋จ. ๋ฆฌ์กํธ์์๋ ์์ฒด์ ์ผ๋ก ์ด๋ฒคํธ ์์คํ ์ ๊ฐ์ง๊ณ ์์ด์ ๊ฐ๋ฅ
์ด๋ฒคํธ ์บก์ฒ๋ง(Event Capturing)
- ์ด๋ฒคํธ๊ฐ DOM ํธ๋ฆฌ์ ์ต์์ ์์(Html)์์๋ถํฐ ์์ํ์ฌ ์ค์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์์๋ก ๋ด๋ ค๊ฐ๋ ๊ฒ
- ์บก์ฒ๋ง ๋จ๊ณ์์ ์ด๋ฒคํธ๋ฅผ ๊ฐ์งํ๋ฉฐ, ์ดํ์๋ ๋ฒ๋ธ๋ง ๋จ๊ณ์์ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌ
- ์ค์ ์ฝ๋์์ ์์ฃผ ์ฐ์ด์ง ์์ง๋ง ์ข ์ข ์ ์ฉํ ๊ฒฝ์ฐ๊ฐ ์์
- ์บก์ฒ๋ง ๋จ๊ณ > ํ๊ฒ ๋จ๊ณ > ๋ฒ๋ธ๋ง ๋จ๊ณ ์
- ์บก์ฒ๋ง ๋จ๊ณ(์ด๋ฒคํธ๊ฐ ํ์์์๋ก ์ ํ๋๋ ๋จ๊ณ)
- ํ๊ฒ ๋จ๊ณ(ํ๊ฒ ์์์ ๋๋ฌ, ํ๊ฒ ์์์ ํ ๋น๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ์คํ๋๋ ๋จ๊ณ)
- ๋ฒ๋ธ๋ง ๋จ๊ณ(์ด๋ฒคํธ๊ฐ ํ๊ฒ ์์๋ถํฐ ์ต์์ ๋ถ๋ชจ ์์๊น์ง ์ ํ, ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ํธ์ถ๋๋ ๋จ๊ณ)
https://ko.javascript.info/bubbling-and-capturing
๋ฒ๋ธ๋ง๊ณผ ์บก์ฒ๋ง
ko.javascript.info
'๐ ์๋ฐ์คํฌ๋ฆฝํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
vscode ์ฝ๋๋ง ์ค์ธ ์ค์์ํ๋ ๋ฒ (0) | 2024.04.08 |
---|---|
[JS] ํด๋ก์ (Closure) (0) | 2024.02.28 |