Current File : //home/tradevaly/www/node_modules/crossvent/README.md |
# crossvent
> Cross-platform browser event handling
The event handler API used by [dominus][1].
# Install
Using Bower
```shell
bower install -S crossvent
```
Using `npm`
```shell
npm install -S crossvent
```
# API
The API exposes a few methods that let you deal with event handling in a consistent manner across browsers.
### `crossvent.add(el, type, fn, capturing?)`
Adds an event listener `fn` of type `type` to DOM element `el`.
```js
crossvent.add(document.body, 'click', function (e) {
console.log('clicked document body');
});
```
### `crossvent.remove(el, type, fn, capturing?)`
Removes an event listener `fn` of type `type` from DOM element `el`.
```js
crossvent.add(document.body, 'click', clicked);
crossvent.remove(document.body, 'click', clicked);
function clicked (e) {
console.log('clicked document body');
}
```
### `crossvent.fabricate(el, type, model?)`
Creates a synthetic custom event of type `type` and dispatches it on `el`. You can provide a custom `model` which will be accessible as `e.detail`.
```js
crossvent.add(document.body, 'sugar', sugary);
crossvent.fabricate(document.body, 'sugar', { onTop: true });
function sugary (e) {
console.log('synthetic sugar' + e.detail.onTop ? ' on top' : '');
}
```
# License
MIT
[1]: https://github.com/bevacqua/dominus