jquery - 将这个 jquery 翻译成 CoffeeScript ?

标签 jquery coffeescript

我不确定如何构建以下内容。这工作正常:

  $('.hover li').on 'hover', (ev) ->
    $(this).addClass('active')

我知道我可以使用“toggle”而不是“addClass”,但由于其他原因,我需要传递一个处理程序输出函数。所以我尝试了这个:

  $('.element').on 'hover', (ev)
    -> $(this).addClass('active'),
    -> $(this).removeClass('active')

这会返回一个错误 - '意外,'。我尝试过其他变体,并且我在网上找到的大多数示例都不使用 .on 'hover' (ev) -> 格式。

最佳答案

如果您想同时附加两个事件处理程序,则不能使用 on() 来实现此目的。

您需要使用hover():

$('.element').hover(
  (ev) -> $(this).addClass 'active'
  (ev) -> $(this).removeClass 'active'
)

或者更好的是,利用toggleClass()

$('.element').hover (ev) -> $(this).toggleClass 'active'

关于jquery - 将这个 jquery 翻译成 CoffeeScript ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10969788/

相关文章:

javascript - 禁用 jQuery 文件上传的拖放功能

grails - coffee文件中的功能无法从其他js获得

javascript - 将 WebGL 非连续线渲染为单个对象

javascript - 在文档的不同页面之间传递数据

javascript - 关于修改 Node 原型(prototype)的担忧

javascript计数器不是加1而是加2而不是有意的

jQuery Live + mouseup 函数,仅使子元素处于事件状态

javascript - 如何在 CoffeeScript 的内部启动评估中使用外部索引嵌套循环?

javascript - 如何将主干模型插入子集合?

javascript - ES6 箭头函数和 CoffeeScript 胖箭头函数之间的主要区别是什么?