【发布时间】:2012-01-17 03:53:02
【问题描述】:
像这里的许多其他用户一样,我对el 和事件有疑问。在我的情况下,我测试了多种解决方案,包括使用默认的el(只是<div></div>)设置tagName,使用jQuery 选择器将el 设置为选择器并等待DOM 准备好。这些解决方案中的每一个都无法绑定事件,并且除了默认的 el 和 tagName 之外的所有解决方案都无法生成 html。
相关代码:
查看
$ ->
class Aggregator.Views.Streams.StreamView extends Backbone.View
template:JST["backbone/templates/stream"]
el: $('.item')
events:
"click div" : "testing"
initialize: (model)->
console.log @el
_.bindAll this , 'render'
@model.bind 'change', @render
@model.view = @
@render()
@delegateEvents()
render: ->
$(@el).html "test"
console.log @el
@
testing: ->
alert "EVENT"
#@model.clear()
调用视图的函数(从另一个视图中提取)
view = new Aggregator.Views.Streams.StreamView({model: stream})
console.log view.el
$(@el).append view.render().el
我有点困惑,我设置了el,但它要么不创建,要么不绑定事件。我尝试等待 DOM 加载并将el 传递给构造函数,但没有成功。对我最可能的明显错误的任何帮助将不胜感激。
【问题讨论】:
标签: javascript backbone.js coffeescript backbone-events