๐ ์ ์ด์ฟผ๋ฆฌ ๊ฐ์ ์ด๋ฒคํธ
'์ด๋ฒคํธ๊ฐ ๊ฐ์ ๋ก ๋ฐ์ํ๋ค'๋ ๋ง์ '์ฌ์ฉ์์ ์ํด' ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๊ฒ์ด ์๋๋ผ
'ํธ๋ค๋ฌ์ ์ํด' ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
์ฆ, ์ฌ์ฉ์์ ๋์ ์์ด ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ์คํ๋๋ ๊ฒ์ ๋ปํฉ๋๋ค.
๊ฐ์ ์ด๋ฒคํธ๋ ๋จ๋ ์ด๋ฒคํธ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๊ฑฐ๋
trigger()์ด๋ฒคํธ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋ฒคํธ๋ฅผ ๊ฐ์ ๋ก ๋ฐ์์ํฌ ์ ์์ต๋๋ค.
๊ฐ์ ์ด๋ฒคํธ๋ ๋จผ์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ๋ฑ๋ก๋ ์ดํ์ ๊ฐ์ ๋ฐ์์ํฌ ์ ์์ต๋๋ค.
[๊ธฐ๋ณธํ] - $("์ด๋ฒคํธ๊ฐ ๋ฑ๋ก๋ ๋์").์ด๋ฒคํธ๋ช (); - $("์ด๋ฒคํธ๊ฐ ๋ฑ๋ก๋ ๋์").trigger();
๐ ์ด๋ฒคํธ ์ ๊ฑฐ ๋ฉ์๋
์ด๋ฒคํธ๋ฅผ ์ ๊ฑฐํ๋ ๋ฉ์๋๋ก๋ off()๊ฐ ์์ต๋๋ค.
on๋ฉ์๋๋ก ๋ฑ๋กํ ์ด๋ฒคํธ๋ ๋จ๋ ์ด๋ฒคํธ๋ฅผ ์ญ์ ํ ๋ ์ฌ์ฉํฉ๋๋ค.
[๊ธฐ๋ณธํ] $("์ด๋ฒคํธ๊ฐ ๋ฑ๋ก๋ ๋์").off("์ ๊ฑฐํ ์ด๋ฒคํธ ์ข ๋ฅ");
๐ฟ ๋ก๋ฉ ์ด๋ฒคํธ
๋ก๋ฉ ์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ์์ html ๋ฌธ์๋ฅผ ์์ฒญํ์ฌ
html ๋ฌธ์์ ๋ก๋ฉ์ด ์๋ฃ๋๋ฉด ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์คํํฉ๋๋ค.
๋ก๋ฉ ์ด๋ฒคํธ์๋ ready()์ load()์ด๋ฒคํธ๊ฐ ์์ต๋๋ค.
๋ง์ฝ ํ์ด์ง๊ฐ ์์ ํ ๋ก๋๋๊ธฐ์ ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค๋ฉด error()๋ฉ์๋๋ ์ธ ์ ์์ต๋๋ค.
โ ready()์ด๋ฒคํธ ๋ฉ์๋
ready()์ด๋ฒคํธ ๋ฉ์๋๋ ์ฌ์ฉ์๊ฐ ์ฌ์ดํธ๋ฅผ ๋ฐฉ๋ฌธํ ๋
์์ฒญํ html๋ฌธ์๊ฐ์ฒด(document)์ ๋ก๋ฉ์ด ๋๋๋ฉด ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํต๋๋ค.
ready()์ด๋ฒคํธ์ ์ฃผ์ธ์ document ๊ฐ์ฒด ์ ๋๋ค.
[๊ธฐ๋ณธํ] $(document).ready(function(){ ์ฝ๋ }); $(document).on("ready", function(){ ์ฝ๋ });
โ load()์ด๋ฒคํธ ๋ฉ์๋
load()์ด๋ฒคํธ ๋ฉ์๋๋ ์ธ๋ถ์ ์ฐ๋๋ ์์ค(img, iframe, video)์ ๋ก๋ฉ์ด ๋๋๋ฉด ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํต๋๋ค.
ready๋ณด๋ค๋ ์กฐ๊ธ ๋๋ฆฌ๊ฒ ์คํ๋ฉ๋๋ค.
load()์ด๋ฒคํธ์ ์ฃผ์ธ์ window ๊ฐ์ฒด ์ ๋๋ค.
[๊ธฐ๋ณธํ] $(window).load(function(){ ์ฝ๋ }); $(window).on("load", function(){ ์ฝ๋ });
๐ ๋ง์ฐ์ค ์ด๋ฒคํธ
๋ง์ฐ์ค ์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ์ฌ์ดํธ์์ ๋ง์ฐ์ค๋ฅผ ์ด์ฉํ์ฌ ์ทจํ๋ ๋ชจ๋ ํ์๋ฅผ ๋งํฉ๋๋ค.
์๋ฅผ ๋ค์ด ์ง์ ํ ์์์์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๊ฑฐ๋ ํด๋ฆญํ๋ ๋ฑ์ ํ์๋ฅผ ๋งํฉ๋๋ค.
1. click() / dblclick() ์ด๋ฒคํธ ๋ฉ์๋
click() ์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ๋ง์ฐ์ค๋ก ์ด๋ค ์์๋ฅผ ํด๋ฆญํ์ ๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๊ณ ,
dblclick() ์ด๋ฒคํธ๋ ์ฌ์ฉ์๊ฐ ์์๋ฅผ ๋๋ธํด๋ฆญํ์ ๋ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํฉ๋๋ค.
[๊ธฐ๋ณธํ] $("์์").click(function(){ ์ฝ๋ }) -> ๋จ๋ ์ด๋ฒคํธ $("์์").on("click", function(){ ์ฝ๋ }) -> ๊ทธ๋ฃน์ด๋ฒคํธ $("์์").click() -> ๊ฐ์ ์ด๋ฒคํธ * dblclick()(๋๋ธํด๋ฆญ)๋ฉ์๋๋ ์ด๋ฒคํธ๋ช ๋ง ๋ค๋ฅด๊ณ ๊ธฐ๋ณธํ์ ๋์ผํฉ๋๋ค.
โ a, form ํ๊ทธ์ ํด๋ฆญ์ด๋ฒคํธ ์ ์ฉ ์ ๊ธฐ๋ณธ์ด๋ฒคํธ ์ฐจ๋จํ๊ธฐ
aํ๊ทธ์ ํด๋ฆญ์ด๋ ๋๋ธํด๋ฆญ์ ๋ฑ๋กํ๋ฉด,
ํด๋ฆญํ ๋๋ง๋ค aํ๊ทธ์ ๋งํฌ ์ฃผ์๋ก ์ด๋ํ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด aํ๊ทธ์ ๊ธฐ๋ณธ ์ด๋ฒคํธ๋ฅผ ์ฐจ๋จํด์ผ ํฉ๋๋ค.
form ์์์ ์ ์ถ ๋ฒํผ (submit)๋ action์ ๋ฑ๋ก๋ ์ฃผ์๋ก ์ด๋์ํค๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
๋ฑ๋กํ ์ด๋ฒคํธ๋ฅผ ์ ์ ์๋ํ๊ฒ ํ๋ ค๋ฉด ๊ธฐ๋ณธ ์ด๋ฒคํธ๋ฅผ ๋จผ์ ์ฐจ๋จํด์ฃผ์ด์ผ ํฉ๋๋ค.
[๊ธฐ๋ณธํ] 1. return false๋ฅผ ์ด์ฉํ๋ ๋ฐฉ์ $('a ๋๋ form').์ด๋ฒคํธ ๋ฉ์๋(function(){ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋; return false; })
2. preventDefault๋ฅผ ์ด์ฉํ๋ ๋ฐฉ์ prevent = ๋ง๋ค, Default = ๊ธฐ๋ณธ๊ฐ $('a ๋๋ form').์ด๋ฒคํธ ๋ฉ์๋(function(event ๋๋ e){ event.preventDefault(); ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋; })
2. mouseover() / mouseout() / hover()
mouseover()๋ ์์ ์์ ๋ง์ฐ์ค๊ฐ ์ฌ๋ผ๊ฐ๋ฉด ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํค๊ณ ,
mouseout()๋ ์์ ๋ฐ์ผ๋ก ๋ง์ฐ์ค๊ฐ ๋ฒ์ด๋๋ฉด ์ด๋ฒคํธ๋ฅผ ๋ฐ์์ํต๋๋ค.
hover()๋ ์์์ ๋ง์ฐ์ค๊ฐ ์ฌ๋ผ๊ฐ์ ๋์ ๋ฒ์ด๋ฌ์ ๋์ ์ด๋ฒคํธ๋ฅผ ๊ฐ๊ฐ ๋ฐ์์ํค๊ณ ,
์ด๋ ๊ฐ๊ฐ ๋ค๋ฅธ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์คํ์ํต๋๋ค.
[๊ธฐ๋ณธํ] $("์์").mouseover(function(){ ์ฝ๋ }) -> ๋จ๋ $("์์").on("์ด๋ฒคํธ๋ช ", function(){ ์ฝ๋ }) -> ๊ทธ๋ฃน $("์์").mouseover() -> ๊ฐ์ * mouseout()์ ์ด๋ฒคํธ ๋ช ๋ง ๋ค๋ฅด๋ฉฐ, ๊ธฐ๋ณธํ์ ๋ชจ๋ ์์ ๊ฐ์ต๋๋ค.
[hover ๊ธฐ๋ณธํ] hover์ด๋ฒคํธ๋ ๋จ๋ ์ด๋ฒคํธ ๊ธฐ๋ณธํ๋ง ์์ต๋๋ค. ๋ฐ๋ผ์ ๊ทธ๋ฃน ์ด๋ฒคํธ๋ก๋ ๋ฑ๋ก์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค. ----------------------------------------------------------------------- - $("์์").hover( function(){ ๋ง์ฐ์ค๊ฐ ์ค๋ฒ ๋์์ ๋ ์คํ๋ ์ฝ๋ }, function(){ ๋ง์ฐ์ค๊ฐ ์์ ๋์์ ๋ ์คํ๋ ์ฝ๋ } ) - $("์์").hover(); -> ๊ฐ์
๐จ๏ธ ์์ผ๋ก ์ง์ ๊ณต๋ถํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์์ฑํ ๊ธ์ด๋๋๋ค !
โ๏ธ
์์ผ๋ก๋ ์ด์ฌํ ๊ณต๋ถํด์ ๋ง์ ๋ด์ฉ์ ๊ณต์ ํ๊ฒ ์ต๋๋ค :)