【问题标题】:JS (Coffee-Script) is not working in rails appJS(咖啡脚本)在 Rails 应用程序中不起作用
【发布时间】:2014-07-26 02:24:21
【问题描述】:
我正在编写一个简单的代码,例如:
ready = ->
$('div').click ->
$(this).append "<span style='color:#f00;'>olol</span>"
$(document).ready(ready)
$(document).on('page:load', ready)
但是,当我单击网页上的 div 元素时,什么也没有发生。当我将它放入标签之间的 HTML 文件中时,一切正常!!!请帮忙,看来我什么都试过了!
【问题讨论】:
标签:
javascript
ruby-on-rails
coffeescript
【解决方案1】:
您没有正确缩进点击处理程序的主体。这部分:
$('div').click ->
$(this).append "<span style='color:#f00;'>olol</span>"
将编译为:
$('div').click(function() {});
$(this).append("<span style='color:#f00;'>olol</span>");
如您所见,单击处理程序中的函数为空。通过缩进第二行来修复它:
$('div').click ->
$(this).append "<span style='color:#f00;'>olol</span>"
现在可以按预期编译:
$('div').click(function() {
return $(this).append("<span style='color:#f00;'>olol</span>");
});
在编写 Coffeescript 时要注意空格。