Javascript 如何通过EventTarget原型将数据传递给自定义事件?
下面我将使用EventTarget原型创建自定义事件。在我的示例中,需要修改此EventTarget对象以将数据返回到onDataEvent侦听器:Javascript 如何通过EventTarget原型将数据传递给自定义事件?,javascript,event-handling,custom-events,Javascript,Event Handling,Custom Events,下面我将使用EventTarget原型创建自定义事件。在我的示例中,需要修改此EventTarget对象以将数据返回到onDataEvent侦听器: o.onDataEvent("foo", function(data){ var dataRetrieved = data.message; //retrieve data object passed to fire function console.log(dataRetrieved); //undefined alert
o.onDataEvent("foo", function(data){
var dataRetrieved = data.message; //retrieve data object passed to fire function
console.log(dataRetrieved); //undefined
alert("Foo just happened.");
});
因此,我在JSFIDLE中做了一个要点,在这里我重写了发送事件的EventTarget.fire函数,以接受数据的第二个参数
还修改了onDataEvent签名以包含数据参数。这里的想法是,除了调用eventfoo之外,我还将向事件返回一些数据
我知道事件是通过侦听器[I]调用的;但我不清楚如何在.call中传递数据
问题:
如何通过EventTarget原型将数据传递给自定义事件
这是该代码的要点:
在调试期间,我验证了使用此模式调用事件,如您在上面的小提琴中所看到的。将数据作为侦听器传递[I]。调用此,事件,数据
然后在你的听众中做:
o.onDataEvent("foo", function(event, data){
console.log(data);
});
好的,我明白了,要直接匹配事件定义,只返回params中的数据,看起来是的。