0

我使用 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

知道可能导致问题的原因吗?

谢谢,格雷格

4

1 回答 1

0

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

PS 看起来你使用的所有东西都使用了命名空间name.space = name.space || {}——你最好实现一个命名空间函数,例如ns('name.space.foo')或者ns('app.views.Home', Backbone.View.extend({...})

于 2012-08-28T01:14:51.663 回答