Front/JavaScript

[JavaScript] ์ด๋ฒคํŠธ

ddo04 2024. 7. 7. 00:07
728x90

๐Ÿชโ€Š ์ด๋ฒคํŠธ

  • ์–ด๋–ค ๋™์ž‘์ด๋‚˜ ์ƒํƒœ ๋“ฑ์˜ ์‚ฌ๊ฑด์„ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ
  • html dom ์š”์†Œ๋“ค์€ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฑธ ์•Œ์•„์ฑŒ ์ˆ˜ ์žˆ๋„๋ก ์ด๋ฒคํŠธ ์‹ ํ˜ธ๋ฅผ ๋ฐœ์ƒ
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ๋ฐœ์ƒํ•œ ์ด๋ฒคํŠธ์˜ ๋ฐ˜์‘์„ ํ•ด์„œ ์–ด๋–ค ๋™์ž‘์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Œ
  • ํ•ด๋‹น ์ด๋ฒคํŠธ๋ฅผ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” EventListener๋ฅผ EventHandler๋ฅผ ์ง€์ • = ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ๋ฅผ ๋“ฑ๋กํ•œ๋‹ค

๐Ÿชโ€Š addEventListener()

  • ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ๋ฅผ ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉ
  • ๋ฉ”์†Œ๋“œ์˜ ์ฒซ ๋ฒˆ์งธ ์ธ์ž์—๋Š” ์ด๋ฒคํŠธ์˜ ์ข…๋ฅ˜๋ฅผ ๋ฌธ์ž์—ด๋กœ ์ง€์ •
  • ๋‘ ๋ฒˆ์งธ ์ธ์ž์—๋Š” ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์‹คํ–‰์‹œํ‚ฌ EventHandler ํ•จ์ˆ˜๋ฅผ ์ „๋‹ฌ ํ•ด์ฃผ์–ด์•ผ ํ•จ
  • ๋‚ด๋ถ€์— ์ง์ ‘ ์ž‘์„ฑํ•˜์—ฌ๋„ ๋จ
  • ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ํ•จ์ˆ˜๋ฅผ ์ธ์ž๋กœ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘์„ฑ
  • EventHandlerํ•จ์ˆ˜๋Š” ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ƒ์„ฑํ•˜๋Š” ์ด๋ฒคํŠธ๋ผ๋Š” ๊ฐ์ฒด๋ฅผ ์ธ์ž๋กœ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒคํŠธ๋ผ๋Š” ์ธ์ž๋ฅผ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • PointerEvent๋ผ๋Š” ๊ฐ์ฒด๊ฐ€ ์ถœ๋ ฅ์ด ๋˜๊ณ  ์žˆ๊ณ  ๊ฐ์ฒด ์•ˆ์—๋Š” ์ด๋ฒคํŠธ์™€ ๊ด€๋ จ๋œ ์ •๋ณด๊ฐ€ ๋“ค์–ด์žˆ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Œ
const button = document.querySelector('button');

function handler(event){
    console.log(event);
}

button.addEventListener('click', handler);




const button = document.querySelector('button');

function handler(event){
    console.log('♣');
}

button.addEventListener('click', handler);

๐Ÿชโ€Š removeEventListener()

  • EventListener ์‚ญ์ œ
  • ํด๋ ˆ์Šค์˜ ์ด๋ฆ„์œผ๋กœ ๊ฐ€์ง€๊ณ  ์˜ด
  • ์œ„์™€ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ ๋“ฑ๋ก
  • ๋“ฑ๋กํ•œ EventListener๋ฅผ ์‚ญ์ œํ•  ๋•Œ๋Š”  removeEventListener๋ผ๋Š” ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉ
  • ์ฒซ ๋ฒˆ์งธ ์ธ์ž์—๋Š” ์ด๋ฒคํŠธ์˜ ์ข…๋ฅ˜๋ฅผ ๋ช…์‹œ
  • ๋‘ ๋ฒˆ์งธ ์ธ์ž์—๋„ ๋“ฑ๋กํ–ˆ๋˜ Handle๋ฅผ ์ „๋‹ฌ
  • ๋“ฑ๋กํ•œ EventHandler๊ฐ€ ๋™์ž‘์„ ์ž˜ํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ  ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ณ  ๋‹ค์‹œ ๋ˆ„๋ฅด๋ฉด ๋“ฑ๋กํ•œ EventListener๊ฐ€ ์‚ญ์ œ๋˜์–ด  ๋” ์ด์ƒ ์ด๋ชจ์ง€๊ฐ€ ์ถœ๋ ฅ๋˜์ง€ ์•Š์Œ
const button = document.querySelector('button');
const removeButton = document.querySelector('.remove');

function handler(event) {
    console.log('♥');
}

function removeHandler(event) {
    button.removeEventListener('click', handler);
}

button.addEventListener('click', handler);
removeButton.addEventListener('click', removeHandler);

'Front > JavaScript' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[JavaScript] ๊ฐ์ฒด ์ถ•์•ฝ ๋ฌธ๋ฒ•  (0) 2024.07.23
[JavaScript] ๋ชจ๋“ˆ  (0) 2024.07.07
[JavaScript] DOM  (0) 2024.07.06
[JavaScript] ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น  (0) 2024.07.06
[JavaScript] ๊ฐ์ฒด  (0) 2024.07.05