๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • What would life be If we had no courage to attemp anything?
Language/JavaScript

JavaScript - Event

by DevIseo 2022. 5. 3.

*๏ธโƒฃ Event

|Event (์ด๋ฒคํŠธ) ๊ฐœ๋…

  • ๋„คํŠธ์›Œํฌ ํ™œ๋™์ด๋‚˜ ์‚ฌ์šฉ์ž์™€์˜ ์ƒํ˜ธ์ž‘์šฉ ๊ฐ™์€ ์‚ฌ๊ฑด์˜ ๋ฐœ์ƒ์„ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•œ ๊ฐ์ฒด
  • ์ด๋ฒคํŠธ ๋ฐœ์ƒ
    • ๋งˆ์šฐ์Šค๋ฅผ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ ํ‚ค๋ณด๋“œ๋ฅผ ๋ˆ„๋ฅด๋Š” ๋“ฑ ์‚ฌ์šฉ์ž ํ–‰๋™์œผ๋กœ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ์Œ
    • ํŠน์ • ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœ(Element.click())ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ ์œผ๋กœ๋„ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ์Œ

 

|Event ๊ธฐ๋ฐ˜ ์ธํ„ฐํŽ˜์ด์Šค

  • AnimationEvent, ClipboardEvent, DragEvent ๋“ฑ
  • UIEvent
    • ๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์ด๋ฒคํŠธ
    • Event์˜ ์ƒ์†์„ ๋ฐ›์Œ
    • MouseEvent, KeyboardEvent, InputEvent, FocusEvent ๋“ฑ์˜ ๋ถ€๋ชจ ๊ฐ์ฒด ์—ญํ• ์„ ํ•จ

 

|Event์˜ ์—ญํ• 

โ€œ~ํ•˜๋ฉด ~ํ•œ๋‹ค.โ€

โ€œํด๋ฆญํ•˜๋ฉด, ๊ฒฝ๊ณ ์ฐฝ์„ ๋„์šด๋‹ค.โ€

โ€œํŠน์ • ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด, ํ•  ์ผ์„ ๋“ฑ๋กํ•œ๋‹ค.โ€

 

 

|Event handler - addEventListener()

  • EventTarget.addEventListener()
    • ์ง€์ •ํ•œ ์ด๋ฒคํŠธ๊ฐ€ ๋Œ€์ƒ์— ์ „๋‹ฌ๋  ๋•Œ๋งˆ๋‹ค ํ˜ธ์ถœํ•  ํ•จ์ˆ˜๋ฅผ ์„ค์ •
    • ์ด๋ฒคํŠธ๋ฅผ ์ง€์›ํ•˜๋Š” ๋ชจ๋“  ๊ฐ์ฒด(Element, Document, Window ๋“ฑ)๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์ง€์ • ๊ฐ€๋Šฅ
  • target.addEventListener(type, listener[, options])
    • type
      • ๋ฐ˜์‘ ํ•  ์ด๋ฒคํŠธ ์œ ํ˜• (๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ ๋ฌธ์ž์—ด)
    • listener
      • ์ง€์ •๋œ ํƒ€์ž…์˜ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์•Œ๋ฆผ์„ ๋ฐ›๋Š” ๊ฐ์ฒด
      • EventListener ์ธํ„ฐํŽ˜์ด์Šค ํ˜น์€ JS function ๊ฐ์ฒด(์ฝœ๋ฐฑ ํ•จ์ˆ˜)์—ฌ์•ผ ํ•จ

 

โ€œ๋Œ€์ƒ์— ํŠน์ • ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด, ํ•  ์ผ์„ ๋“ฑ๋กํ•˜์žโ€

EventTarget.addEventListener(type, listener)

 

 

|Event ์ทจ์†Œ

  • event.preventDefault()
  • ํ˜„์žฌ ์ด๋ฒคํŠธ์˜ ๊ธฐ๋ณธ ๋™์ž‘์„ ์ค‘๋‹จ
  • HTML ์š”์†Œ์˜ ๊ธฐ๋ณธ ๋™์ž‘์„ ์ž‘๋™ํ•˜์ง€ ์•Š๊ฒŒ ๋ง‰์Œ
    • ex) a ํƒœ๊ทธ์˜ ๊ธฐ๋ณธ ๋™์ž‘์€ ํด๋ฆญ ์‹œ ๋งํฌ๋กœ ์ด๋™ / form ํƒœ๊ทธ์˜ ๊ธฐ๋ณธ ๋™์ž‘์€ form ๋ฐ์ดํ„ฐ ์ „์†ก
  • ์ด๋ฒคํŠธ๋ฅผ ์ทจ์†Œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ, ์ด๋ฒคํŠธ์˜ ์ „ํŒŒ๋ฅผ ๋ง‰์ง€ ์•Š๊ณ  ๊ทธ ์ด๋ฒคํŠธ๋ฅผ ์ทจ์†Œ
  • ์ทจ์†Œ ํ•  ์ˆ˜ ์—†๋Š” ์ด๋ฒคํŠธ๋„ ์กด์žฌ
    • ์ด๋ฒคํŠธ์˜ ์ทจ์†Œ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋Š” event.cancelable์„ ์‚ฌ์šฉํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ

๋Œ“๊ธ€