A lightweight, minimal (~.650kb) JavaScript events library mimicking jquery. But Eventing well let you keep your blazing fast loading speeds.
- Fix pack imports
- Add tests
- Improve docs
Use npm
or yarn
.
yarn add eventing
npm i -s eventing
Usage by CDN
https://unpkg.com/eventing@0.1.0/lib/eventing.js
The core of eventing
runs on a few main functions; eventing
, add
, on
, off
, once
, and trigger
.
Used to created eventing
objects.
const buttons = eventing('button');
selector
- A selector used to query the document
eventing(selector: string): Eventing
Used to add nodes to an eventing
object.
const buttons = eventing();
buttons.add('button');
selector
- A selector used to query the document
add(selector: string): Eventing
Registers a single or multiple events.
const buttons = eventing('button').on('click', () => console.log('clicked'));
const input = eventing('div').once('click focus', 'button', () =>
console.log('clicked or focused'),
);
events
- A string of events to register
delegatedTarget
- Optional selector for a delegated target
handler
- Handler registered for the event or events
on(events: string, delegatedTarget?: string, handler: Function): Eventing
Unregisters events
buttons.off();
buttons.off('click');
buttons.off('click focus');
NO ARGS
- Unregisters all events associated with an eventing object
events
- A string of events to unregister
off(events?: string): Eventing
Triggers events
eventing('button')
.on('click', () => console.log('clicked'))
.trigger('click');
events
- A string of events to unregister
options
- Options used to created
trigger(events: string, options: Object): Eventing