Ruby on rails3在哪里放javascript代码

时间:2011-07-20 15:05:55

标签: javascript jquery ruby-on-rails

我几乎是Ruby on Rails世界的新手,几个星期前我跟随Lynda在rails指南上的好红宝石,所以我知道如何设置项目等等。无论如何,我用html创建了一个网站/ css但毕竟想在铁轨中这样做,所以我去上班了。我喜欢你如何只是“转储”文件夹中的文件和rails只是选择它们但我在我的网站上也有几行javascript代码来“激活”以下的jquery。它在我的标题中

<script type="text/javascript" id="sourcecode">
    $(function(){

    $('.scroll-pane').jScrollPane({
    showArrows: false,
    autoReinitialise: true
        });

});
</script>

所以现在的简单问题是,我在哪里放这个代码,因为rails实际上没有。

5 个答案:

答案 0 :(得分:1)

查看此页面以了解布局和渲染:http://guides.rubyonrails.org/layouts_and_rendering.html

有一个关于渲染ERB模板的部分。您需要将javascript代码放在头文件中的.erb模板中,就像在普通HTML页面中一样。

要明确的是,您可以将脚本标记的内容保存到.js文件中,并将其链接到模板中,就像使用纯HTML一样。

答案 1 :(得分:1)

你可以放置你的JS:

  • 在它处理的erb模板中
  • 在普通.js文件中的public / javscripts下,您可以使用javascript_include_tag帮助程序将其包含在模板中
  • 在单独的.js.erb模板文件中,用于ajaxian / manual包含目的

已编辑,根据建议:

就个人而言,我会选择最后2个中的一个,因为那些更像是配置约会,或者是“Rails”方式,这是我相信你正在寻找的。

答案 2 :(得分:0)

我将所有脚本放在public / javascripts中的目录结构中,该目录结构镜像控制器/操作名称+供应商目录和公共目录。在我的application.html。*中,我有代码将控制器/操作所需的内容加载到头文件中。我努力不将javascript放入我的.haml(.erb)文件中,但如果必须,我愿意违反该规则。

答案 3 :(得分:0)

我会将它们放在public/javascripts/中,直到Rails 3.1。

还要确保将javascripts包含在模板中。

<% javascript_include_tag :all %>

答案 4 :(得分:0)

出于加载原因,您是否希望在加载模板后而不是在开头模式中调用某些javascript片段(例如:在标题中调用)?