JQuery 事件是否可用于 Dom addEventListener?

Are JQuery events usables with Dom addEventListener?

我在我的项目中使用 Bootstrap4 alpha,出于某些调查目的,我尝试使用 DOM addEventListener().[=18= 捕获 JQuery 事件]

事件由 bootstrap 在其 collapse 组件中使用 JQuery $("#mypanel").trigger("shown.bs.collapse") 函数触发。

如果我尝试使用 JQuery $("#mypanel").on("shown.bs.collapse", ... ) 函数捕获它,一切正常。但是,如果我在相应的 DOM 元素上使用 $("#mypanel").get(0).addEventListener("shown.bs.collapse", ... ),则事件不会被“捕获”

JQuery事件系统和标准DOM事件系统不兼容吗?

让我觉得它们实际上不兼容的一件事是,如果我使用 Chrome monitorEvents() 函数来跟踪“shown.bs.collapse”事件,它根本不会出现.

欢迎对此提出任何反馈。

克莱门特

不,您不能将 jQuery 自定义事件与常规 JavaScript 事件引擎一起使用。

将 jQuery 事件系统视为标准 DOM 事件系统的扩展。 jQuery 可以了解浏览器引发的所有事件,因为它可以为其创建实际的事件处理程序。它还可以拥有自己的自定义事件,因为当您调用 .trigger('your.custom.event') 时,jQuery 可以在引发实际的浏览器事件之前首先检查自己为该(自定义)事件存储的事件处理程序。