问题描述
|
我正在尝试在我的Web应用程序中使用ribs.js。我有一个视图,它使用JQuery可拖动插件使div可拖动:
var ExampleView = Backbone.View.extend({
events: {
//...
},initialize: function() {
_.bindAll(this,\"render\");
this.model.bind(\'change\',this.render);
},render: function() {
// icanhaz
this.el = ich.kinectdevtmpl();
$(this.el).draggable({
drag: function() {
alert(this.model);
}
});
return this;
}
});
但是在拖动事件处理程序中,我无法访问\'this.model \',因为\'this \'不再引用该视图。那么,如何在JQuery事件处理程序中访问我的View?
解决方法
这已经改变,不再是您想要的。
您可以将其分配给变量,然后改用它。
var that = this;
$(this.el).draggable({
drag: function() {
alert(that.model);
}
});