0

我正在尝试将我的控制器特定代码组织成各种 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 .
4

2 回答 2

1

您是否尝试过使用 jQuery 快捷方式来准备好文档?$(function(){ alert("loaded") }); 它具有相同的功能。此外,您可能应该更新到 rails 3.2.13,因为 3.2.0 和 3.2.13 之间有一些主要的安全更新

于 2013-06-23T23:55:40.290 回答
0

似乎通过删除//= require_self评论,该$(document).ready功能起作用。我最初通过这个railscasts 剧集升级到 3.1 。在他的代码中,他包含了该行,但我注意到在我新生成的脚手架 3.1 应用程序中它不存在。我不确定 require_self 的目的是什么,但删除它可以解决问题!

多谢你们!

于 2013-06-24T00:10:01.297 回答