我有一个对象构造函数,我想从中调度一个customEvent。然后我想从对象的实例中听它。 下面的代码是我想要完成的一个例子。任何人都知道如何做到这一点。
var example = new Example();
example.addEventListner('customEvent', tempMethod);
function tempMethod(event){
console.log("event working = ", event.message);
}
function Example(){
// dispatch and event from here.
this.dispatchEvent('customEvent', 'message hello');
}
答案 0 :(得分:1)
您可以使用jQuery从普通对象(或Example
实例)创建发射器。
var emitter = $({});
$(button).click(function() {
emitter.trigger('customEvent');
});
您还可以使用energy或eventemitter2等发射器库。
var emitter = energy();
button.addEventListener('click', function() {
emitter.emit('customEvent');
}, false);
如果没有按钮(如您编辑过的问题),您可以在.on
上创建自己的.off
,.emit
和Example.prototype
方法,也可以从发射器实例like this。