2015-04-24 61 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()'。 –