4

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

该事件是在它的折叠组件$("#mypanel").trigger("shown.bs.collapse")中通过引导程序使用 JQuery 函数触发的。

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

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

让我认为它们实际上不兼容的一件事是,如果我使用 ChromemonitorEvents()功能来跟踪“shown.bs.collapse”事件,它根本不会出现。

欢迎对此提出任何反馈。

克莱门特

4

1 回答 1

6

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

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

于 2015-12-04T13:32:57.917 回答