1
像許多其他用戶在這裏我有'el'和事件的問題。在我的情況下,我測試了多個解決方案,包括使用默認el(只是'')設置tagName,將el設置爲使用jQuery選擇器的選擇器並警告DOM準備就緒。這些解決方案中的每一個在綁定事件時都失敗了,除了默認的el和tagName在生成html時都失敗了。 相關代碼 查看骨幹動態創建'el'不綁定事件
$ ->
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傳遞給構造函數,但沒有成功。任何幫助,我最可能的明顯錯誤,將不勝感激。
的作品!我假設「點擊」將相對於文檔而不是視圖元素。感謝您的解釋。 –
好吧,假設是錯誤的,事件哈希總是在視圖的元素範圍內,因此,沒有任何內容的點擊將綁定到埃爾本身,點擊後面的東西將在埃爾內搜索。 – Sander