【发布时间】:2014-11-18 17:39:08
【问题描述】:
我知道你可以像这样创建CustomEvent:
var wordCreated = new CustomEvent(
"newWord",
{
detail: {
word: "hola",
translation: "hi",
},
bubbles: true,
cancelable: true
}
);
我想知道如何在不使用new 和Object.create 模式的情况下做到这一点?
我没有看到解决方案的问题是CustomEvent 有两个参数:一个指定事件名称的字符串,以及一个包含bubbles、cancelable 和details 属性的配置对象.我不确定如何将字符串和对象都传递给Object.create。
最终我希望能够以以下标准方式使用此自定义事件:
var p = document.querySelector('p'); // a random node
p.addEventListener('newWord', function(ev){ console.log(ev) });
p.dispatchEvent(wordCreated);
【问题讨论】:
-
我现在正在删除我的答案,直到我有机会进一步研究它。道歉。
-
为什么不使用在您的第一个 sn-p 中创建的事件来执行
p.dispatchEvent(wordCreated);?这就是CustomEvent的用途。重新发明轮子? -
我正在尝试了解如何在这种情况下应用
Object.create模式。是的,现有模式运行良好。
标签: javascript dom-events object-create