我试图准确地了解jQuery事件在Backbone.View中的绑定时间和方式。如果我有这样的看法:
var MyView = Backbone.View.extend({ events: {"click" : "handler"} });
骨干网会在调用render()时绑定click事件吗?在身体后面?还有别的吗?
发布于 2013-09-24 10:54:57
事件处理程序在调用初始化后被绑定。下面是源代码,注意delegateEvents方法:
var View = Backbone.View = function(options) {
this.cid = _.uniqueId('view');
this._configure(options || {});
this._ensureElement();
this.initialize.apply(this, arguments);
this.delegateEvents();
};然后,delegateEvents方法具有如下所示的jQuery代码:
this.$el.on(eventName, selector, method);一个特定的示例,侦听视图元素上的事件,并将单击带有load-more类的按钮委托给处理程序:
this.$el.on("click", ".load-more", function(){});https://stackoverflow.com/questions/18979525
复制相似问题