2015-04-24 39 views
1

在此MDN页面Creating and Triggering Events上显示了使用EventCustomEvent创建事件的示例。它解释CustomEvent允许自定义的细节,但除此之外,它不会说太多。新事件('build')vs新CustomEvent('build')

那么,有什么区别?如果我正在创建一个通用滚动事件,我应该使用CustomEvent?或者它只是用于JavaScript中不存在的事件?

此外,我注意到MouseEvent也是Event的孩子,所以如果我正在创建点击事件,我可以使用new MouseEvent('click')

由于

回答

2

从该引导:

要更多的数据添加到事件对象,所述接口CustomEvent存在且detail属性可用于传递自定义数据。

您可以使用Event()作任何事情。如果要附加自定义数据,则使用CustomEvent('eventName', {data})

是的,对于鼠标事件,您应该使用MouseEvent

+0

如果我可以使用事件的任何事情,有什么好处是使用鼠标事件事件的点击事件?是否有一种情况需要明确使用Event? – BigName

+0

@BigName在控制台中运行它们并查看其差异。 'MouseEvent'包含所有的指针数据; “事件”只是一个通用事件。 – Mathletics

+0

另外IE11不支持'Event()'。 –