https://github.com/bendrucker/dom-event-target
DOM EventTarget compatible events interface
https://github.com/bendrucker/dom-event-target
Last synced: about 1 year ago
JSON representation
DOM EventTarget compatible events interface
- Host: GitHub
- URL: https://github.com/bendrucker/dom-event-target
- Owner: bendrucker
- License: mit
- Created: 2015-06-01T23:24:18.000Z (about 11 years ago)
- Default Branch: master
- Last Pushed: 2018-11-13T19:04:51.000Z (over 7 years ago)
- Last Synced: 2025-06-11T10:04:11.601Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 5.86 KB
- Stars: 7
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
# dom-event-target [](https://travis-ci.org/bendrucker/dom-event-target)
> DOM [`EventTarget`](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget) compatible events interface
## Install
```
$ npm install --save dom-event-target
```
## Usage
```js
var EventTarget = require('dom-event-target');
var target = new EventTarget()
target.addEventListener('myEvent', function (data) {
console.log('myEvent fired', data)
})
target.send('myEvent', {foo: 'bar'})
```
## Caveats
The true `EventTarget` in the browser prevents the addition of duplicate handlers for an event. This library does not implement deduping. Duplicate handlers will be removed when `removeEventListener` is called with matching arguments.
The `useCapture` argument and the `dispatchEvent` method are not implemented. dom-event-target provides an EventTarget API, not a full implementation of DOM events.
## API
#### `new EventTarget()`
Creates a new EventTarget
---
#### `addEventListener(event, callback)` -> `undefined`
##### event
*Required*
Type: `string`
The name of the event.
##### callback
*Required*
Type: `function`
The event callback.
---
#### `removeEventListener(event, callback)` -> `undefined`
*Required*
Type: `string`
The name of the event.
##### callback
*Required*
Type: `function`
The event callback.
---
#### `send(event, [...args])` -> `undefined`
`send` is variadic and is called with the event name and arguments to be passed to the event callback
##### event
*Required*
Type: `string`
The name of the event.
## License
MIT © [Ben Drucker](http://bendrucker.me)