Pau*_*Dee 15 javascript view javascriptmvc backbone.js
我有一个名为gallery的视图选项.我想在渲染图库时(直到它关闭)听取并处理keydown事件.
我如何在骨干事件中这样做?我已经尝试了'keydown X'的所有变体:功能,但没有一个有效.
fea*_*age 22
我刚刚测试了以下内容,它完美无缺:
var view = Backbone.View.extend({
// ... snip ...
events: {
'keyup :input': 'logKey'
,'keypress :input': 'logKey'
}
,logKey: function(e) {
console.log(e.type, e.keyCode);
}
});
Run Code Online (Sandbox Code Playgroud)
我会回去查看你的代码.Backbone中的所有事件都定义为附加到viewInstance.el
元素的委托.要取消绑定事件,请viewInstance.remove()
调用$(viewInstance.el).remove()
封面下的哪些调用并清除所有委派的事件.
另请注意,在某些浏览器中(我认为是Firefox)存在一个已知问题,即某些键(如箭头键)不会冒泡,并且无法在委派keypress
事件中正常工作.如果您正在捕捉特殊键,那么您可能最好使用keyup
和keydown
.