Note: This feature is available in Web Workers.
The CustomEvent() constructor creates a new CustomEvent object.
new CustomEvent(type)
new CustomEvent(type, options)typeA string providing the name of the event. Event names are case-sensitive.
options OptionalAn object that, in addition of the properties defined in Event(), can have the following properties:
detail OptionalAn event-dependent value associated with the event. This value is then available to the handler using the CustomEvent.detail property. It defaults to null.
A new CustomEvent object.
// create custom events
const catFound = new CustomEvent("animalfound", {
detail: {
name: "cat",
},
});
const dogFound = new CustomEvent("animalfound", {
detail: {
name: "dog",
},
});
const element = document.createElement("div"); // create a <div> element
// add an appropriate event listener
element.addEventListener("animalfound", (e) => console.log(e.detail.name));
// dispatch the events
element.dispatchEvent(catFound);
element.dispatchEvent(dogFound);
// "cat" and "dog" logged in the consoleAdditional examples can be found at Creating and dispatching events.