我正在尝试将我的控制器特定代码组织成各种javascript文件,然后通过资产管道进行编译。我的一些函数需要加载DOM,所以我将它们放在一个就绪的函数中:$(document).ready(function () { alert("loaded") });
由于某种原因,当我从主application.js document.ready函数中删除它并将其放在相应的文件中时,它不会被执行。是否无法对资产管道中的document.ready函数进行多次调用?
我正在使用rails 3.2.0,ruby 1.9.3p429和jquery-rails(3.0.1)
这是application.js链轮评论:
//= require jquery
//= require jquery_ujs
//= require_self
//= require_tree .
答案 0 :(得分:1)
您是否尝试过使用jQuery快捷方式准备好文档? $(function(){ alert("loaded") });
它具有相同的功能。此外,您应该更新到rails 3.2.13,因为3.2.0和3.2.13之间存在一些主要的安全更新
答案 1 :(得分:0)
似乎通过删除//= require_self
评论,$(document).ready
功能正常运行。我最初使用此railscasts episode升级到3.1。在他的代码中他包括那条线,但我注意到在我新生成的脚手架3.1应用程序中它不存在。我不确定require_self的目的是什么,但删除它修复了问题!
谢谢你们!