在处理事件时避免样板代码(Backbone, CoffeeScript)
Avoiding boilerplate code when handling events (Backbone, CoffeeScript)
考虑下面的例子http://jsfiddle.net/YmWW2/。
如何避免多余的方法,如execFoo
, execBar
, execBaz
和传递字符串,如"foo"
直接到exec
方法?
events:
"click a#foo" : "execFoo"
"click a#bar" : "execBar"
"click a#baz" : "execBaz"
execFoo: -> @exec "foo"
execBar: -> @exec "bar"
execBaz: -> @exec "baz"
exec: (x) -> alert x
如果我正确理解了你的问题,你可以通过检查jquery传递给点击处理程序的事件对象来获得'foo', 'bar'信息。
例如,下面的代码片段应该提醒被点击的任何链接的id属性。events:
'click a' : 'exec'
exec: (event) ->
clickedLink = $(event.target)
alert(clickedLink.id())
相关文章:
- backbone.js无法渲染视图
- 如何使用backbone.js从集合中获取模型名称
- Backbone LayoutManager渲染问题
- Backbone.js restful json API design
- Backbone虹吸以获取对象数组
- 2个backbone.js集合,具有相同的模型,但排序顺序不同
- Backbone.js micro templating
- FancyTree JS+Backbone.JS-将数据加载到FancyTree时出现问题
- Backbone.js将模型绑定到视图时出错
- minimy javascript是什么意思?Backbone.js
- 点击功能没有'ajax调用动态元素(Backbone)后无法工作
- Backbone.js视图中的多个模型
- 在哪里存储HTML模板以在Backbone.js中使用
- 带有jquery插件的backbone.js视图
- 如何使用Undercore和Backbone在HTML中表示模型属性
- Backbone listenTo不将jquery函数作为处理程序进行激发
- '单击'事件在Backbone中消失.使用流沙后查看
- 如何检查Backbone.View当前是否在DOM中呈现
- 如何使用 Backbone 将多条记录呈现到 html 表中.js .
- node.js, backbone, socketio, express和coffee script都在一起吗?