2012-08-27 66 views
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

任何想法可能導致問題的原因是什麼?

感謝, 格雷格

回答

0

你的聽衆是self這是一個骨幹的觀點,但你觸發一個jQuery元素。觸發器和監聽器都必須位於擴展Backbone.Events的相同元素上。

PS看起來像你的名字空間一切使用name.space = name.space || {} - 你最好是實現一個命名空間功能,例如, ns('name.space.foo')ns('app.views.Home', Backbone.View.extend({...})

+0

謝謝,我會試試。 – Gregory

+0

PS我說「擴展Backbone.Events」,只是爲了清楚 - 視圖,模型,集合和路由器都擴展Backbone.Events。 –