Template framework can bind events on the root of views, in addition to descendant elements.

This commit is contained in:
Corey Johnson & Nathan Sobo
2011-12-29 16:13:16 -08:00
parent 5aee51eb35
commit 0f772c0858
2 changed files with 14 additions and 3 deletions

View File

@@ -40,8 +40,11 @@ class Template
bindEvents: (view) ->
for eventName in this.constructor.events
view.find("[#{eventName}]").each ->
selector = "[#{eventName}]"
elements = view.find(selector).add(view.filter(selector))
elements.each ->
elt = $(this)
methodName = elt.attr(eventName)
elt[eventName]((event) -> view[methodName](event, elt))
elt.on eventName, (event) -> view[methodName](event, elt)