【问题标题】:Multiple jQuery extensions in the same CoffeeScript file同一个 CoffeeScript 文件中的多个 jQuery 扩展
【发布时间】:2011-10-13 19:07:22
【问题描述】:

我想在同一个文件中放置多个 jquery 扩展。我在一个文件中有以下内容:

do($ = jQuery) ->
  $.fn.addAlternatingStyles = ->
    $(@).children('tr').not('.exclude').hover(
      -> $(@).addClass('hoverrow')
      -> $(@).removeClass('hoverrow')
    )

do($ = jQuery) ->  
  $.fn.stripe = ->
    $(@).children('tr:even').addClass('evenrow')
    $(@).children('tr:odd').addClass('oddrow')

它不识别第二个扩展名,即条带。

谁能指出我正确的方向?

【问题讨论】:

  • 该代码对我来说看起来不错。这不是制表符/空格问题,是吗?如果您将alert 'foo' 放在$.fn.stripe = ... 之前,它会运行吗?
  • 它在 JS fiddle 中可以正常工作:jsfiddle.net/ca3WZ“不识别”到底是什么意思?
  • 这是一个标签问题。我的错!谢谢

标签: jquery coffeescript


【解决方案1】:

您无需使用单独的do

do($ = jQuery) ->
  $.fn.addAlternatingStyles = ->
    $(@).children('tr').not('.exclude').hover(
      -> $(@).addClass('hoverrow')
      -> $(@).removeClass('hoverrow')
    )

  $.fn.stripe = ->
    $(@).children('tr:even').addClass('evenrow')
    $(@).children('tr:odd').addClass('oddrow')

【讨论】:

  • 没错,但这并不能解释问题。
猜你喜欢
  • 1970-01-01
  • 2010-11-12
  • 1970-01-01
  • 1970-01-01
  • 2015-05-06
  • 2016-06-24
  • 2011-06-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多