【发布时间】:2017-05-29 11:55:45
【问题描述】:
我使用以下代码创建了一个自定义事件:
function DataLoader() {
let el = document.createElement('section');
setTimeout(function() {
el.dispatchEvent(new CustomEvent('myevent', {
number: 123
}));
}, 3000);
return el;
}
// With code below I add my event listener.
let loader = new DataLoader();
loader.addEventListener('myevent', function(e) {
console.log(e.number); // ← `e.number` is `undefined` when event is triggered.
});
document.body.appendChild(loader);
触发事件时,变量e.number为undefined。我做错了什么?我没有使用 JQuery。 See this codepen
【问题讨论】:
-
@Mr_Perfect:我按照this article中的指导进行操作
-
告诉我你到底想做什么?
-
@Mr_Perfect:如果触发事件,则必须将数字
123发送到处理程序以继续初始化过程,并且该过程需要在DataLoader函数中加载的数据。 -
要将事件附加到哪个元素?正文还是部分?
-
@Mr_Perfect:到
section-元素。如果不清楚,我的借口。
标签: javascript addeventlistener custom-events