我对此事件有一个看法:
var View = Backbone.View.extend({
el: $('#test'),
events: {
"change input": "test"
},
test: function(e) {
console.log("test");
}
});
var view = new View();
使用主干0.9.9它可以工作,但是使用主干0.9.10我得到了这个错误:未捕获TypeError:对象[object Object]没有方法'off'。我需要改变什么来处理主干0.9.10上的事件?
我正在使用这个cdn的
http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.4/underscore-min.js http://cdnjs.cloudflare.com/ajax/libs/backbone.js/0.9.10/backbone-min.js
由于
答案 0 :(得分:12)
我正在使用jquery 1.5.2,并且在jquery 1.7.0上引入了off方法。 Backbone 0.9.9要求el包含unbind方法,而Backbone 0.9.10要求el包含off方法。方法unbind存在于jquery 1.5.2上,这就是我的代码与主干0.9.9一起工作的原因。
答案 1 :(得分:1)
试试这个......
var Test = Backbone.View.extend({
events: {
"change input": "test"
},
initialize: function() {
this.setElement($('#test'));
},
test: function(e) {
alert("test");
}
});
var test = new Test();
或者,这会更好......
var Test = Backbone.View.extend({
events: {
"change input": "test"
},
test: function(e) {
alert("test");
}
});
var test = new Test({
el: $('#test')
});