W3cubDocs

/Web APIs

Document: createEvent() method

Warning: Many methods used with createEvent, such as initCustomEvent, are deprecated. Use event constructors instead.

Creates an event of the type specified. The returned object should be first initialized and can then be passed to EventTarget.dispatchEvent.

Syntax

js

createEvent(type)

Parameters

type

A string that represents the type of event to be created. Possible event types include "UIEvents", "MouseEvents", "MutationEvents", and "HTMLEvents". See Notes section for details.

Return value

An Event object.

Examples

js

// Create the event.
const event = document.createEvent("Event");

// Define that the event name is 'build'.
event.initEvent("build", true, true);

// Listen for the event.
elem.addEventListener(
  "build",
  (e) => {
    // e.target matches elem
  },
  false,
);

// Target can be any Element or other EventTarget.
elem.dispatchEvent(event);

Notes

Event type strings suitable for passing to createEvent() are listed in the DOM standard — see the table in step 2. Bear in mind that most event objects now have constructors, which are the modern recommended way to create event object instances.

Gecko supports some non-standard event object aliases, which are listed below.

Event Module Standard event object Gecko also supports
Text event module TextEvent TextEvents
Keyboard event module KeyboardEvent KeyEvents
Basic events module Event Events

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
createEvent 1 12
1From version 67, creating touch events using this method is no longer supported.
9 7 1 4.4 18 4 10.1 1 1.0

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent