JBEvent
JBEvent is a library that provides functions related to JavaScript events.
extends()
It inherits the prototype of the JBEvent
class to the specified target object and returns the target object.
The target object that inherits the prototype of JBEvent
can use the methods of JBEvent
.
var foo = {
name: 'SomeObject'
};
JBEvent.extends(foo);
foo.on('SomeEvent', function() {
console.log(this.name);
});
foo.fire('SomeEvent');
fire()
Triggers an event corresponding to the specified event name.
Executes all event listeners registered with the specified event name.
var foo = {};
JBEvent.extends(foo);
foo.on('SomeEvent', function() {
console.log('Anonymous event listener');
});
foo.on('SomeEvent', function(eve) {
console.log(eve.data);
}, null, 'SomeData');
foo.on('SomeEvent', function(eve) {
console.log(eve.info);
});
foo.fire('SomeEvent', 'SomeInfo');
fireOnce()
Triggers the event corresponding to the specified event name, executes the registered event listeners, and removes the executed event listeners.
Executes and removes event listeners registered with the specified event name.
var foo = {};
var bar = function() {
console.log('SomeEventListener');
};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
foo.fire('SomeEvent');
foo.fireOnce('SomeEvent');
foo.fire('SomeEvent');
hasListener()
Returns whether the specified event listener is registered with the specified event name.
var foo = {};
var bar = function() {};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
foo.hasListener('SomeEvent', bar);
foo.hasListener('OtherEvent', bar);
hasListeners()
Returns whether an event listener registered with the specified event name exists.
var foo = {};
var bar = function() {};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
console.log(foo.hasListeners('SomeEvent'));
console.log(foo.hasListeners('OtherEvent'));
off()
Removes the specified event listener registered for the specified event name.
var foo = {};
var bar = function() {
console.log('SomeEventListener');
};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
foo.fire('SomeEvent');
foo.off('SomeEvent', bar);
foo.fire('SomeEvent');
offAll()
Removes all event listeners for all event names registered on the object.
var foo = {};
var bar = function() {
console.log('SomeEventListener');
};
var baz = function() {
console.log('OtherEventListener');
};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
foo.on('SomeEvent', function() {
console.log('AnonymousEventListener');
});
foo.on('OtherEvent', baz);
foo.offAll();
foo.fire('SomeEvent');
foo.fire('OtherEvent');
offs()
Removes all registered event listeners for the specified event name.
var foo = {};
var bar = function() {
console.log('SomeEventListener');
};
JBEvent.extends(foo);
foo.on('SomeEvent', bar);
foo.on('SomeEvent', function() {
console.log('Anonymous event listener');
});
foo.fire('SomeEvent');
foo.offs('SomeEvent');
foo.fire('SomeEvent');
on()
Registers an event listener to execute when an event corresponding to the specified event name occurs.
var foo = {};
JBEvent.extends(foo);
foo.on('SomeEvent', function() {
console.log(this === foo);
});
foo.fire('SomeEvent');
var foo = {};
var bar = {};
JBEvent.extends(foo);
foo.on('SomeEvent', function() {
console.log(this === bar);
}, bar);
foo.fire('SomeEvent');
var foo = {};
JBEvent.extends(foo);
foo.on('SomeEvent', function(eve) {
console.log(eve.data);
}, null, 'SomeData');
foo.fire('SomeEvent');
var foo = {};
JBEvent.extends(foo);
foo.on('SomeEvent', function() {
console.log('Anonymous event listener 1');
});
foo.on('SomeEvent', function() {
console.log('Anonymous event listener 2');
}, null, null, 100);
foo.on('SomeEvent', function() {
console.log('Anonymous event listener 3');
}, null, null, 1);
foo.fire('SomeEvent');
once()
Registers a one-off event listener for the specified event name.
Registers a one-off event listener to execute when the event occurs.
Event listeners registered with the once()
method are executed only once when an event occurs, and the event listener is removed after it is executed.
var foo = {};
var bar = function() {
console.log('SomeEventListener');
};
JBEvent.extends(foo);
foo.once('SomeEvent', bar);
foo.fire('SomeEvent');
foo.fire('SomeEvent');
License
MIT License