未捕获的事件

Events not captured

本文关键字:事件      更新时间:2023-09-26

我使用 jQuery 和 Backbone 为 Github Star 页面构建了一个 chrome 扩展。你可以在这里尝试一下:https://chrome.google.com/webstore/detail/gpmgjficglcobhpbbkbgklfcpmhpemnb 源代码在这里:https://github.com/gregorym/galactic

我的问题是以下几点,在页面上我插入了一个过滤存储库的文本字段。但有时当我打字太快时,我的事件会被触发但没有被捕获......

以下是触发事件的代码:https://github.com/gregorym/galactic/blob/master/app/views/stars/search.js#L25

这是应该捕获它们的代码:https://github.com/gregorym/galactic/blob/master/app/views/stars/index.js#L14

知道是什么导致了问题吗?

谢谢格雷格

您的侦听器位于 self 上,这是一个 Backbone 视图,但您在 jQuery 元素上触发。触发器和侦听器必须位于扩展 Backbone.Events 的同一元素上。

PS 看起来像您使用 name.space = name.space || {} 命名空间所有内容 - 您最好实现命名空间函数,例如 ns('name.space.foo')ns('app.views.Home', Backbone.View.extend({...})