jquery.delegate()和Coffeescript

时间:2011-11-13 10:35:49

标签: jquery coffeescript

我是Coffeescript的新手,想在jquery 1.6.4中使用delegate()方法。方法签名为.delegate( selector, eventType, handler )。我如何在Coffeescript中调用此方法?我正在使用Rails 3.1。

谢谢, 达尼。

4 个答案:

答案 0 :(得分:6)

就像coffeescript中的任何其他方法一样?

($ 'body').delegate '.external.link', 'click', (evt) ->
  # handler body

我觉得我对你的问题遗漏了一些......

答案 1 :(得分:3)

回复您的2个处理程序问题:

$('body').hover ->
  # handler 1
  console.log 'in'
, ->
  # handler 2
  console.log 'out'

http://js2coffee.org/是一个很好的网站,如果你在没有自动编译器的情况下编写coffeescript,你可以在imediatly中检查生成的javascript。

答案 2 :(得分:1)

这是一个纯粹的美学问题,但我更喜欢将我的处理程序包装在命名函数中(如果不止一个):

    over = => ...
    out  = => ...

    $el.hover over, out

这对我来说似乎更干净。

答案 3 :(得分:1)

我可能很密集,但上面的正确答案花了我一些时间才弄明白。 第一个参数是div还是?如果要监视新元素,则需要提供元素标识符,然后提供事件类型

$('#forum-senate-admin-lists').delegate 'input[id=delete-forum-object]','click', (evt) ->
    deleteForumObject($(this))`