2012-10-09 76 views
0

放置我似乎无法找到一个明确的答案,我相信我不是第一个或最后一个烦恼它。Javascripts包含与Rails 3.1和JQuery

当前的最佳做法建议将javascripts放在页面的底部。但是,使用合适的$(function() {...});触发的任何块都将无法找到$。

虽然它不是特定于只是twitter引导,我用我的布局等。 twitter制作的应用程序布局将脚本移至底部。

因此,在处理块之前,JQuery需要存在于页面中。

更好地分离JQuery库并将其包含在头部,其余部分通过页面末尾的application.js包含,还是允许资产管道创建一个文件并将其全部发送一旦?

很显然,存在权衡,但普遍的共识是什么?

答案:移动你的JavaScript出来的HTML和到外部文件中 ..是不是正是我希望:)

回答

0

资产管道应该收集所有必要的JavaScript后的文件成为可能,为那些服务。这些文件应该包含jQuery,并且应该放置在您的布局的head标记中。

也许Asset Pipeline Guide会有帮助吗?

+0

Hi @Ryan,感谢您的回复和链接,但并未解决将脚本移动到页面末尾的最佳做法建议。如果您在说Rails不推荐这样做,或者资产管道缩小策略优于将文件分解为依赖性或后加载行为,那么我对答案感到满意。 twitter-bootstrap-rails gem生成一个包含页面末尾所有脚本的模板的事实表明,至少有一些dev'rs正在采用。 – levous