โ ์๋ก์ด ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ๋ฐฐ์ฐ๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ๊ทธ ์ธ์ด๋ก ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๊ฒ์ด๋ค. โ
- Dennis Ritchie
C์ธ์ด์ ์ฐฝ์์

jQuery ์ด๋ฒคํธ ๋ฌธ๋ฒ
์น ํ์ด์ง๋ ์ฌ์ฉ์์ ์๋ง์ ์ํธ์์ฉ์ ํ๊ฒ ๋๋ค. ์ฌ์ฉ์๋ ๋ง์ฐ์ค๋ฅผ ์์ง์ด๊ฑฐ๋, ์์๋ฅผ ํด๋ฆญํ๊ฑฐ๋, ํ ์คํธ ๋ฐ์ค์ ๊ธ์ ์ฐ๋ ๋ฑ ์๋ง์ ์ข ๋ฅ์ ๋์(action)์ ์ํํ๋ค. ์ด๋ฌํ ์ฌ์ฉ์์ ๋์๋ค์ด ๋ชจ๋ ์ด๋ฒคํธ(event)๋ฅผ ๋ฐ์์ํค๋ ๊ฒ์ด๋ค.
์ ๋ฆฌํ์๋ฉด, ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ค๋ ๊ฒ์ ์น ํ์ด์ง์์ ํน์ ๋์์ด ๋ฐ์ํ์ฌ, ์น ๋ธ๋ผ์ฐ์ ๊ฐ ๊ทธ ์ฌ์ค์ ์๋ ค์ฃผ๋ ๊ฒ์ ์๋ฏธํ๋ค.
ํน์ ์์์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ(event handler)๋ผ๋ ํจ์๋ฅผ ์์ฑํ์ฌ ์ฐ๊ฒฐํด์ผ๋ง ํ๋ค. ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ์ฐ๊ฒฐ๋ ํน์ ์์์์ ์ง์ ๋ ํ์
์ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ๋ฉด, ์น ๋ธ๋ผ์ฐ์ ๋ ์ฐ๊ฒฐ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์คํํ๊ฒ ๋๋ ์๋ฆฌ์ด๋ค.
์ ์ด์ฟผ๋ฆฌ๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ์ด๋ฒคํธ ํจ๋ค๋ฌ์ ๋์ผํ๊ฒ ๋์ํ๋ค. ๋ํ ์ ์ด์ฟผ๋ฆฌ์์๋ ์๋์ฐ ์ด๋ฒคํธ, ๋ง์ฐ์ค ์ด๋ฒคํธ, ํผ ๊ด๋ จ ์ด๋ฒคํธ, ํค๋ณด๋ ์ด๋ฒคํธ ๋ฑ ์์ฃผ ์ฌ์ฉํ๋ ์ด๋ฒคํธ ํฌํ ๋ฉ์๋ ๋ฌถ์๋ค์ ์ ๊ณตํ๋ค. ์๋ฐ์คํฌ๋ฆฝํธ์ ๋นํด ๋ณด๋ค ํธ๋ฆฌํ๊ณ ์ง๊ด์ ์ธ ์ด๋ฒคํธ ๋ฉ์๋์ ์ด์ฉํด ๋ณด๋ค ์์ํ ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋ค.
์ด๋ฒคํธ ํธ๋ค๋ฌ
์ ์ด์ฟผ๋ฆฌ ์ด๋ฒคํธ ๋ฉ์๋ | ์ค๋ช |
bind() | ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฐํจ => $(selector).bind(eventName, function(event){} ); => $(selector).bind(object); |
unbind() | bind() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ด๋ฒคํธ ์ฐ๊ฒฐ ์ ๊ฑฐ => $(selector).unbind(); => $(selector).unbind(eventName); => $(selector).unbind(eventName, function); |
delegate() | ํ์ฌ ๋๋ ๋ฏธ๋์ ์กด์ฌํ๋ ๋ฌธ์ ๊ฐ์ฒด์ ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฝํจ (version:1.4.3*) |
undelegate() | delegate() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ์ฐ๊ฒฐํ ์ด๋ฒคํธ๋ฅผ ์ ๊ฑฐํจ (version:1.4.3*) |
live() | ํ์ฌ ๋๋ ๋ฏธ๋์ ์กด์ฌํ๋ ๋ฌธ์ ๊ฐ์ฒด์ ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฐํจ |
die() | live() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ์ฐ๊ฒฐํ ์ด๋ฒคํธ๋ฅผ ์ ๊ฑฐํจ => $(selector).die() => $(selector).die(eventName) => $(selector).die(eventName , function) |
one() | ์ด๋ฒคํธ๋ฅผ ํ๋ฒ๋ง ์ฐ๊ฒฐํจ |
on() | ์ด๋ฒคํธ๋ฅผ ์ฐ๊ฒฐํจ, ์๋ ์ด๋ฒคํธ์ด๊ฒฐ์ ๋์ฒดํจ ( delegate ๋์ฒดํจ version:1.7 ) => bind() : $(selector).on(eventName , eventHandler) => live() : $(document).on(eventName , selector, eventHandler) => delegate() : $(selector).on(eventName , selector , eventHandler) |
off() | ์ด๋ฒคํธ๋ฅผ ์ ๊ฑฐํจ => unbind() : $(selector).off(eventName[, eventHandler]) => die() : $(document).off(eventName , selector[, eventHandler]) => undelegate() : $(selector).off(eventName , selector[, eventHandler]) |
toggle(function(event){}, ... , function(event){} ) |
click ์ด๋ฒคํธ๋ฅผ ์ฌ๋ฌ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๋ฒ๊ฐ์๊ฐ๋ฉฐ ์คํํ ์์๊ฒ ์ฐ๊ฒฐํจ |
hover(mouseenter , mouseleave) | mouseenter ์ด๋ฒคํธ์ mouseleave ์ด๋ฒคํธ๋ฅผ ๋์์ ์ฐ๊ฒฐํจ |
trigger() | ์ด๋ฒคํธ๋ฅผ ๊ฐ์ ๋ฐ์ => $(selector).trigger(eventName) => $(selector).trigger(eventName, data) |
// ์๋ฐ์คํฌ๋ฆฝํธ
document.querySelector("#btn").addEventListener("click", function(event) {
});
// ์ ์ด์ฟผ๋ฆฌ
$("#btn").on("click", function(event) {
});
์ด๋ฒคํธ์ ์ฐ๊ฒฐ
ํน์ ์์์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ(event handler) ํจ์๋ฅผ ์์ฑํด์ผ๋ง ํ๋ค. ์ด๋ ๊ฒ ์์ฑ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ํน์ ์์์ ์ฐ๊ฒฐํ๋ ๊ฒ์ ์ด๋ฒคํธ์ ์ฐ๊ฒฐ(event binding)์ด๋ผ๊ณ ํ๋ค.
๋ค์ ์์ ๋ id๊ฐ "btn"์ธ ์์์ ํด๋ฆญ(click) ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์ฐ๊ฒฐํ๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋ค.
// ์๋ ๋ฐฉ๋ฒ
$("#btn").click(function(event) { });
$("#btn").bind("click", function(event) { });
// ์ต์ ๋ฐฉ๋ฒ
$("#btn").on("click", function(event) { });
$("body").on({ // <body>์์์
click: function() { // ๊ฐ์ฒด๋ก
$("#text").html("๋ฒํผ์ ํด๋ฆญํ์ต๋๋ค!");
}
}, "#btn"); // id๊ฐ "btn"์ธ ์์์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๋ฑ๋กํจ.
$("body").on("click", "#btn", function(event) { }); // ํ๋ผ๋ฏธํฐ๋ก ๋ฑ๋กํ ์์ btn๋ฅผ ์ ๋ฌ
์ ์ด์ฟผ๋ฆฌ 1.0์์๋.bind()๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๋ฑ๋กํ์๋ค. ๊ทธ๋ค์์๋.live()๋ฉ์๋์.delegate()๋ฉ์๋๋ฅผ ๊ฑฐ์ณ, ํ์ฌ๋.on()๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ๊ณ ์๋ค.
on() ๋ฉ์๋
.on() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ํ๋์ ์ด๋ฒคํธ ํธ๋ค๋ฌ์ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฒคํธ๋ฅผ ๋์์ ์ฐ๊ฒฐํ ์ ์๋ค.
// ๋ชจ๋ <button>์์์ mouseenter์ click mouseleave ์ด๋ฒคํธ๋ฅผ ์ค์ ํจ.
$("button").on("mouseenter click mouseleave", function() {
$("#text").append("๋ง์ฐ์ค๊ฐ ๋ฒํผ ์๋ก ์ง์
ํ๊ฑฐ๋ ํด๋ฆญํ๊ฑฐ๋ ๋น ์ ธ๋๊ฐ์ด์!<br>");
});
๋ํ, ํ๋์ ์์์ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฒคํธ๋ฅผ ๊ฐ์ด ์ฐ๊ฒฐํ ์๋ ์๋ค.
$("button").on({ // ๋ชจ๋ <button>์์์
mouseenter: function() { // mouseenter ์ด๋ฒคํธ๋ฅผ ์ค์ ํจ.
$("#text").append("๋ง์ฐ์ค๊ฐ ๋ฒํผ ์๋ก ์ง์
ํ์ด์!<br>");
},
click: function() { // click ์ด๋ฒคํธ๋ฅผ ์ค์ ํจ.
$("#text").append("๋ง์ฐ์ค๊ฐ ๋ฒํผ์ ํด๋ฆญํ์ด์!<br>");
},
mouseleave: function() { // mouseleave ์ด๋ฒคํธ๋ฅผ ์ค์ ํจ.
$("#text").append("๋ง์ฐ์ค๊ฐ ๋ฒํผ ์์์ ๋น ์ ธ๋๊ฐ์ด์!<br>");
}
});
โ
one() ๋ฉ์๋
.one() ๋ฉ์๋๋ ์ฐ๊ฒฐ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ํ ๋ฒ ์คํ๋๊ณ ๋์๋, ๋๋ ์คํ๋์ง ์๋ ์ผํ์ฉ ์ด๋ฒคํธ ํธ๋ค๋ฌ ์ด๋ค.
$("button").one("click", function() {
// ๋ชจ๋ <button>์์๊ฐ ์ฒ์ ํด๋ฆญ๋์ ๋์๋ง ์คํ๋จ.
$("#text").append("์ฒซ ๋ฒ์งธ ํด๋ฆญ์ด์์!<br>");
// ๋ชจ๋ <button>์์๊ฐ ๋ ๋ฒ์งธ ํด๋ฆญ๋์ ๋๋ถํฐ๋ ์ด ์ด๋ฒคํธ ํธ๋ค๋ฌ๊ฐ ์คํ๋จ.
$(this).click(function() {
$("#text").append("์ด ๋ฒํผ์ ๋ฒ์จ ํด๋ฆญํ๋ค์!<br>");
});
});
โ.one() ๋ฉ์๋๋ .on() ๋ฉ์๋์ ๊ฐ์ ์ธ์๋ฅผ ์ ๋ฌ๋ฐ์ต๋๋ค.
๋ฐ๋ผ์ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฒคํธ ํธ๋ค๋ฌ์ ์ฌ๋ฌ ๊ฐ์ ์ด๋ฒคํธ๋ฅผ ๊ฐ์ง ์ ์๋ ๋ฑ .on() ๋ฉ์๋์ ๊ฐ์ ํน์ง์ ๊ฐ์ต๋๋ค.
off() ๋ฉ์๋
.off() ๋ฉ์๋๋ ๋๋ ์ฌ์ฉํ์ง ์๋ ์ด๋ฒคํธ์์ ์ฐ๊ฒฐ์ ์ ๊ฑฐํ๋ค.
$("#clickBtn").on("click", function() { // id๊ฐ "clickBtn"์ธ ์์๋ฅผ ํด๋ฆญํ์ ๋ ์คํ๋จ.
$("#text").append("๋ฒํผ์ ํด๋ฆญํ์ด์!<br>");
});
$("#removeBtn").on("click", function() {
$("#clickBtn").off("click"); // id๊ฐ "clickBtn"์ธ ์์์ ํด๋ฆญ ์ด๋ฒคํธ์์ ์ฐ๊ฒฐ์ ์ ๊ฑฐํจ.
});
์ด๋ฒคํธ์ ์์ (event delegation)
์ด๋ฒคํธ๋ ๊ธฐ๋ณธ์ ์ ๋ฒ๋ธ๋ง, ์บก์ณ๋ง์ด ์ผ์ด๋๋ค. ์ ์ด์ฟผ๋ฆฌ์์ ์ด๋ฌํ ๋ฌด๋ถ๋ณํ ๋ฒ๋ธ๋ง์ ์์ ๋ด๊ธฐ ์ํด ์ ์ด์ฟผ๋ฆฌ ์ ์ฉ ๋ ์ธ๋ฒ์งธ ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๊ณตํ๋ค.
์ ์ด์ฟผ๋ฆฌ๋ ์ด๋ฒคํธ์ ์์์ ํตํด ๋ค์์ ์์์ ๊ณตํต์ผ๋ก ์ ์ฉ๋๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ๊ณตํต๋ ์กฐ์ ์์์ ๋จ ํ ๋ฒ๋ง ์ฐ๊ฒฐํ๋ฉด ๋์ํ ์ ์๋๋ก ํด์ค๋ค.
.on( events [, selector ] [, data ], handler )
Parameter | Description |
events | 1๊ฐ ๋๋ 2๊ฐ ์ด์์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋ ์ด๋ฒคํธ๋ช |
selector | ์ด๋ฒคํธ๋ฅผ ๋ฐ์ธ๋ฉํ ๋งค์น๋์ ์ ํ์ ์ ํ์ |
data | ์ด๋ฒคํธํธ๋ค๋ฌ์ ์ ๋ฌํ ๋ฐ์ดํฐ. ์ด๋ฒคํธํธ๋ค๋ฌ์ ๋งค๊ฐ๋ณ์ event.data์ ๋ด๊ฒจ ์ ๋ฌ๋๋ค. |
handler | ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ์ ๋ ์คํ๋ ํจ์. ์ฒซ๋ฒ์งธ ์ธ์๋ก ์ด๋ฒคํธ ๊ฐ์ฒด๊ฐ ์๋ฌต์ ์ผ๋ก ์ ๋ฌ๋๋ค. |
์๋ฅผ ๋ค์ด โ๋ฐ๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ๋ ์ ์ด์ฟผ๋ฆฌ๋ ์์๋ง๋ค ์ง์ ๋ฑ๋ก๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ ํ์ฌ ์กด์ฌํ๋ ์์์๋ง ์ฐ๊ฒฐ๋๋ฉฐ, ์๋กญ๊ฒ ์ถ๊ฐ๋๋ ์์์๋ ์ฐ๊ฒฐ๋์ง ์๋๋ค. ๊ทธ๋์ ๋ฐ๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ์์๋ ๋์ ์ผ๋ก ์ถ๊ฐ๋ ์์์ ๋ํด ๋ณ๋๋ก ์ด๋ฒคํธ ๋ฑ๋ก์ ์ถ๊ฐ๋ก ํด์ฃผ์ด์ผ ํ๋ค.
<ul>
<li><a href="/html/intro">HTML</a></li>
<li><a href="/css/intro">CSS</a></li>
</ul>
$("ul a").on("click", function(event) { // <ul>์์์ ์์ ์์ ์ค ๋ชจ๋ <a>์์๋ฅผ ํด๋ฆญํ์ ๋,
event.preventDefault(); // <a>์์์ ํด๋ฆญ์ ๊ธฐ๋ณธ ๋์์ธ ๋งํฌ์ ์๋์ ์ค์ง์ํด.
$("#text").append("์ด ๋งํฌ๋ ๋์ํ์ง ์์ต๋๋ค!<br>");
});
$("button").one("click", function() {
$("ul").append('<li><a href="/jquery/intro">jQuery</a></li>');\
// aํ๊ทธ๋ฅผ ์ถ๊ฐํด๋ ์์ ์ด๋ฒคํธ ๋งํฌ๋ง๊ธฐ ๋์์ํจ
// ์คํฌ๋ฆฝํธ๋ก ์ถ๊ฐ๋ ํ๊ทธ๋ ์ด๋ฒคํธ๋ก ๋ฑ๋ก์ด ์๋๊ธฐ ๋๋ฌธ.
});
โํ์ง๋ง ์์ ์์ ์ ์ด๋ฒคํธ์ ์์์ ์ด์ฉํ๋ฉด, ๋ค์๊ณผ ๊ฐ์ด ์์ฑํ ์ ์๋ค.
.on() ๋ฉ์๋๋ ํด๋น ์์์ ์ฒซ ๋ฒ์งธ ์ธ์๋ก ์ ๋ฌ๋ฐ์ ์ด๋ฒคํธ๊ฐ ์ ํ๋์์ ๋, ๊ทธ ์ด๋ฒคํธ๋ฅผ ๋ฐ์ํ ์์๊ฐ ๋ ๋ฒ์งธ ์ธ์๋ก ์ ๋ฌ๋ฐ์ ์ ํ์์ ๊ฐ์์ง๋ฅผ ๊ฒ์ฌํ๋ค. ๋ง์ฝ ์ด๋ฒคํธ๊ฐ ๋ฐ์ํ ์์์ ๋ ๋ฒ์งธ ์ธ์๋ก ์ ๋ฌ๋ฐ์ ์ ํ์๊ฐ ๊ฐ์ผ๋ฉด, ์ฐ๊ฒฐ๋ ์ด๋ฒคํธ ํธ๋ค๋ฌ๋ฅผ ์คํํ๋ค.
$("ul").on("click", "a", function(event) { // ul์์ ์ด๋ฒคํธ๋ฅผ ๋ฐ์ธ๋ฉํ ๋งค์น๋์
์ ํ์ ์ ํ์ a์์์๊ฒ ์ด๋ฒคํธ ์ค์
event.preventDefault(); // <a>์์์ ํด๋ฆญ์ ๊ธฐ๋ณธ ๋์์ธ ๋งํฌ์ ์๋์ ์ค์ง์ํด.
$("#text").append("์ด ๋งํฌ๋ ๋์ํ์ง ์์ต๋๋ค!<br>");
});
$("button").one("click", function() {
$("ul").append('<li><a href="/jquery/intro">jQuery</a></li>');
});
์ด๋ฒคํธ์ ์์์ ์ด์ฉํ๋ฉด ํ์ฌ ์กด์ฌํ๋ ์์ ์์๋ฟ๋ง ์๋๋ผ, ๋์ค์ ์ถ๊ฐ๋๋ ์์ ์์๊น์ง๋ ๋ชจ๋ ์๋์ผ๋ก ์ฐ๊ฒฐ๋๋ค.
jQuery ์ด๋ฒคํธ ์์ฑ
โ
์ด๋ฒคํธ ๊ฐ์ฒด์์ฑ
event.pageX | ๋ธ๋ผ์ฐ์ ์ ํ๋ฉด์ ๊ธฐ์ค์ผ๋ก ํ ๋ง์ฐ์ค์ X์ขํ ์์น |
event.pageY | ๋ธ๋ผ์ฐ์ ์ ํ๋ฉด์ ๊ธฐ์ค์ผ๋ก ํ ๋ง์ฐ์ค์ Y์ขํ ์์น |
event.preventDefault() | ๊ธฐ๋ณธ ์ด๋ฒคํธ๋ฅผ ์ ๊ฑฐํจ |
event.stopPropagation() | ์ด๋ฒคํธ ์ ๋ฌ์ ์ ๊ฑฐํจ |
โ
๋ง์ฐ์ค ์ด๋ฒคํธ
click | ๋ง์ฐ์ค๋ฅผ ํด๋ฆญํ ๋ ๋ฐ์ํจ. |
dblclick | ๋ง์ฐ์ค๋ฅผ ๋๋ธํด๋ฆญํ ๋ ๋ฐ์ํจ. |
mousedown | ๋ง์ฐ์ค ๋ฒํผ์ ๋๋ฅผ ๋ ๋ฐ์ํจ. |
mouseup | ๋ง์ฐ์ค ๋ฒํผ์ ๋ ๋ ๋ฐ์ํจ. |
mouseenter | ๋ง์ฐ์ค ์์์ ๊ฒฝ๊ณ ์ธ๋ถ์์ ๋ด๋ถ๋ก ์ด๋ํ ๋ ๋ฐ์. (์๊ธฐ์์ ๋ง ์ด๋ฒคํธ) |
mouseleave | ๋ง์ฐ์ค ์์์ ๊ฒฝ๊ณ ๋ด๋ถ์์ ์ธ๋ถ๋ก ์ด๋ํ ๋ ๋ฐ์. (์๊ธฐ์์ ๋ง ์ด๋ฒคํธ) |
mousemove | ๋ง์ฐ์ค๋ฅผ ์์ง์ผ ๋ ๋ฐ์ํจ. |
mouseout | ๋ง์ฐ์ค๊ฐ ์์๋ฅผ ๋ฒ์ด๋ ๋ ๋ฐ์ํจ. (๋ฒ๋ธ๋ง) |
mouseover | ๋ง์ฐ์ค๋ฅผ ์์ ์์ ๋ค์ด์ฌ ๋ ๋ฐ์ํจ.(๋ฒ๋ธ๋ง) |
โ
ํค๋ณด๋ ์ด๋ฒคํธ
keydown | ํค๋ณด๋๊ฐ ๋๋ฌ์ง ๋ ๋ฐ์ํจ. |
keypress | ๊ธ์๊ฐ ์ ๋ ฅ๋ ๋ ๋ฐ์ํจ. |
keyup | ํค๋ณด๋๊ฐ ๋ผ์ด์ง ๋ ๋ฐ์ํจ. |
โ
์๋์ฐ ์ด๋ฒคํธ
ready | ๋ฌธ์ ๊ฐ์ฒด๊ฐ ์ค๋น๋ฅผ ์๋ฃํจ. |
load | ์๋์ฐ(๋ฌธ์ ๊ฐ์ฒด)๋ฅผ ๋ถ๋ฌ๋ค์ผ ๋ ๋ฐ์ํจ. |
unload | ์๋์ฐ(๋ฌธ์ ๊ฐ์ฒด)๋ฅผ ๋ซ์ ๋ ๋ฐ์ํจ. |
resize | ์๋์ฐ์ ํฌ๊ธฐ๋ฅผ ๋ณํ์ํฌ ๋ ๋ฐ์ํจ. |
scroll | ์๋์ฐ๋ฅผ ์คํฌ๋กคํ ๋ ๋ฐ์ํจ. => $(window).scroll(function(){ }); |
error | ์๋ฌ๊ฐ ์์ ๋ ๋ฐ์ํจ. |
โ
์ ๋ ฅ ์์ ์ด๋ฒคํธ
change | ์ ๋ ฅ ์์์ ๋ด์ฉ์ ๋ณ๊ฒฝํ ๋ ๋ฐ์ํจ. |
focus | ์ ๋ ฅ ์์์ ์ด์ ์ ๋ง์ถ๋ฉด ๋ฐ์ํจ. |
focunsin | ์ ๋ ฅ ์์์ ์ด์ ์ด ๋ง์ถฐ์ง๊ธฐ ๋ฐ๋ก ์ ์ ๋ฐ์ํจ. |
focusout | ์ ๋ ฅ ์์์ ์ด์ ์ด ์ฌ๋ผ์ง๊ธฐ ๋ฐ๋ก ์ ์ ๋ฐ์ํจ. |
blur | ์ ๋ ฅ ์์์ ์ด์ ์ด ์ฌ๋ผ์ง๋ฉด ๋ฐ์ํจ. |
select | ์ ๋ ฅ ์์์ ์ ํํ ๋ ๋ฐ์ํจ(input[type=text] ํ๊ทธ์ textarea ํ๊ทธ ์ ์ธ). |
submit | submit ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ฐ์ํจ. |
reset | reset ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ฐ์ํจ. |
โ
๊ฐ๋จํ ์ด๋ฒคํธ ์ข ๋ฅ
blur | focus | focusin | focusout | load |
resize | scroll | unload | click | dblclick |
mousedown | mouseup | mousemove | mouseover | mouseout |
mouseenter | mouseleave | change | select | submit |
keydown | keypress | keyup | error | ready |
$(์ ํ์).์ด๋ฒคํธ์ด๋ฆ(function(event){
});
# ์ฐธ๊ณ ์๋ฃ
http://tcpschool.com/jquery/jq_event_method
https://turfrain.tistory.com/entry/1-jQuery-%EB%A9%94%EC%86%8C%EB%93%9C-%EC%A0%95%EB%A6%AC
์ด ๊ธ์ด ์ข์ผ์ จ๋ค๋ฉด ๊ตฌ๋ & ์ข์์
์ฌ๋ฌ๋ถ์ ๊ตฌ๋
๊ณผ ์ข์์๋
์ ์์๊ฒ ํฐ ํ์ด ๋ฉ๋๋ค.