event-map
v2.0.0
Published
quickly add a list of event listeners to a view, inspired by Backbone.View event delegation
Downloads
16
Maintainers
Readme
event-map
A module to ease the addition and removal of a mapping of delegated listeners to a view. Inspired by Backbone.View's delegateEvents. A mapping consists of an object where the key is an event and optionally a selector as well and the value is a listener function.
Install
npm install event-map --save
Usage
eventMap([domElement,] map [, useCapture])
On a domElement, append these listeners delegated to the provided selectors:
var removeListeners = eventMap(domElement, {
'click .btn': function(event){ console.log(event.target + 'clicked'); },
'mouseover h1, h2, a': onRollover,
'touchstart': onTouchStart
});
//at a later timer, clean up:
removeListeners();
If no domElement is provided, all events are placed on document:
var removeListeners = eventMap({
'touchstart': onTouchStart,
'touchmove': onTouchMove,
'touchend': onTouchEnd
}, true);
License
MIT, see LICENSE.md for details.