【发布时间】:2012-01-08 14:59:14
【问题描述】:
我正在 Backbone.js 中创建一个具有父视图和多个子视图的应用程序。子视图包含它们侦听和执行功能的链接。
父级存储所有子级视图的列表。在 render 函数中,计算完自己的 html 后,它会执行以下操作:
$(this.el).html(html);
for (var i = 0; i < this.views.length; i++){
$('.children', this.el).append(this.views[i].render().el);
}
回答:问题是我在渲染期间创建了链接。 IE。在第一次渲染(从 init 调用)时,事件成功绑定到链接。但是,由于所有后续的 render 调用都重新创建了整个元素,因此新链接没有绑定处理程序。这是通过@Tom Tu 将this.delegateEvents() 添加到渲染中的解决方案解决的
【问题讨论】:
标签: javascript jquery backbone.js