0

在 Rails 应用程序上工作,我的咖啡脚本代码已损坏。这

$('.post-reply4').hide() 

正在工作,但没有别的。单击 message4 链接不会执行任何操作。

控制台给出了这个错误: Uncaught TypeError: object is not a function

咖啡稿:

# Place all the behaviors and hooks related to the matching controller here.
# All this logic will automatically be available in application.js.
# You can use CoffeeScript in this file: http://jashkenas.github.com/coffee-script/

jQuery ->

    toggleThis = () ->
        $('#post-reply4').show()

    $('.post-reply4').hide()

    $('#message4').on('click') ->
        toggleThis

html:

<a href="#message" id="message4">reply</a>

<div class="post-reply4">
stuff
</div>

应用程序.js:

//= require jquery

//= require jquery_ujs
//= require bootstrap
//= require_tree .
4

1 回答 1

1

你的咖啡脚本函数声明应该是:

toggleThis = ->
    $('.post-reply4').show()

那么你的电话应该是:

$('#message4').on 'click', (evt) ->
    toggleThis() 

有关语法 ,请参阅这本“关于 CoffeeScript 的小书”。

更新:感谢@muistooshort,他在下面的评论中指出,当你应该使用上面代码中更新的类选择器'.post-reply4'时,你正在使用id选择器'#post-reply4'。

于 2013-08-05T15:16:43.963 回答