2

将此代码放入

$('#hello').click ->
  alert 'hello'

在香草 Rails 3.1 应用程序中的 posts.js.coffee 中不起作用。javascript 在页面之前编译和加载,因此函数不会绑定到它的元素。有一些简单的解决方案,比如在页面上手动加载 js 而不是使用资产管道,或者使用 JQuery .live 函数,但看起来这段代码应该开箱即用。我错过了什么吗?

4

1 回答 1

1

我可能会在这里指出显而易见的事情,但是您(在 jQuery 中)是否尝试过这个:

$(function(){    
    //your code
    $('#hello').click(function(){
    alert("hello");
    });
});

或者

$(document).ready(function(){ [...] });

这些(至少在正常情况下)应该防止内部的任何 javascript 在加载 DOM 之前执行任何操作。

希望这可以帮助

于 2011-09-14T08:44:04.240 回答