이 번역은 완료되지 않았습니다. 이 문서를 번역해 주세요.

영향을 받는 EventListener를 적절한 순서로 호출하는 지정된 EventTarget에서 Event를 (동기적으로) 디스패치합니다. 일반 이벤트 처리 규칙 (capturing과 선택적인 bubbling단계)은 dispatchEvent()를 사용하여 수동으로 전달 된 이벤트에도 적용됩니다.

Syntax

cancelled = !target.dispatchEvent(event)

Parameter

  • event는 Event 오브젝트로써 디스패치될 이벤트입니다.
  • targetEvent.target를 초기화하기 위해서 사용되고 어떤 이벤트리스너를 호출할 것인지 결정합니다.

Return Value

  • 적어도 하나의 이벤트 핸들러가 그 이벤트를 처리하면서  Event.preventDefault()를 호출하였다면 false를 반환하고 그렇지 않으면 true를 반환합니다.

dispatchEvent 메서드는 그 이벤트의 타입이 메서드의 호출이전에 초기화되지 않았을 경우 UNSPECIFIED_EVENT_TYPE_ERR 에러를 발생시킵니다. 또는 이벤트의 타입이 null이거나 공백 스트링을 경우에도 같은 에러를 발생시킵니다. 이벤트 핸들러에 의해 발생한 이벤트는 잡히지 않은 예외(uncaugt exceptions)로 보고가 되며 이벤트 핸들러는 내부 콜스택(nested callstack)에서 실행이 됩니다. 이는 곧 완료가 될 때까지 호출자(caller)를 막는 다는 뜻이고 예외들이 호출자(caller)에게 전파(propagate)되지 않음을 말합니다. 

Notes

DOM에 의해 시작되고 event loop를 통해 이벤트 핸들러를 비동기 적으로 호출하는 "네이티브"이벤트와 달리 dispatchEvent는 이벤트 핸들러를 동기적으로 호출합니다. dispatchEvent를 호출 한 후 코드가 계속되기 전에 모든 해당 이벤트 핸들러가 실행되고 리턴됩니다.

implementation's 이벤트 모델의 디스패치 이벤트에 사용되는 create-init-dispatch 프로세스의 마지막 단계입니다. 이벤트는 Event constructor를 사용하여 만들 수 있습니다.

Event object reference도 한번 확인해 보세요

Example

See Creating and triggering events.

Specifications

Specification Status Comment
DOM
The definition of 'EventTarget.dispatchEvent()' in that specification.
Living Standard Initial definition in the DOM 2 Events specification.

Browser compatibility

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidiOS SafariSamsung Internet
Basic supportChrome Full support 4Edge Full support 12Firefox Full support 2IE Full support 9
Full support 9
No support 6 — 11
Notes Alternate Name
Notes Older versions of IE supported an equivalent, proprietary EventTarget.fireEvent() method.
Alternate Name Uses the non-standard name: fireEvent
Opera Full support 9Safari Full support 3.2WebView Android Full support 4Chrome Android Full support 18Edge Mobile Full support YesFirefox Android Full support 4Opera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support  
Full support
See implementation notes.
See implementation notes.
Uses a non-standard name.
Uses a non-standard name.

 

문서 태그 및 공헌자

이 페이지의 공헌자: limkukhyun, Jaysok
최종 변경자: limkukhyun,