放置javascript代码的Ruby on rails
Ruby on rails3 where to put javascript code
对于Ruby on Rails的世界,我几乎是一个新手,几周前我跟随了Lynda的Ruby on Rails指南,所以我有点知道如何建立一个项目等等。不管怎样,我用html/css做了一个网站,但想在rails中做,所以我去工作了。我喜欢你把文件"转储"到文件夹里,然后rails把它们挑出来,但我的网站上也有几行javascript代码来"激活"jquery。它在我的标题
<script type="text/javascript" id="sourcecode">
$(function(){
$('.scroll-pane').jScrollPane({
showArrows: false,
autoReinitialise: true
});
});
</script>
那么现在的问题是,既然rails没有。
查看此页面的布局和渲染:http://guides.rubyonrails.org/layouts_and_rendering.html
有一节是关于呈现ERB模板的。你需要把你的javascript代码放在你的。erb模板,在头部,就像你在一个普通的HTML页面。
为了清楚起见,您可以将脚本标记的内容保存到一个.js文件中,并在模板中链接到它,就像在普通HTML中一样。
你可以把你的JS:
- 在动词模板中处理
- 在public/javscripts下的一个普通的。js文件中,你可以使用javascript_include_tag帮助器 将其包含在模板中
- 在单独的。js中。用于ajax/manual的erb模板文件包括目的
EDITED,按建议:
就我个人而言,我会选择后两个中的一个,因为它们更多的是约定而不是配置,或者是"Rails"的方式,这是我相信你正在寻找的。
我将public/javascripts中的所有脚本放在一个目录结构中,该目录结构反映了控制器/操作名称+供应商目录和公共目录。在我的application.html。*我有代码来加载我需要的控制器/动作到头。我努力不把javascript放到我的。haml (.erb)文件中,但如果必须的话,我愿意打破这个规则。
我会把它们放在public/javascripts/
直到Rails 3.1。
还要确保你在模板中包含了你的javascript。
<% javascript_include_tag :all %>
出于加载的原因,难道你不希望某些javascript片段在模板加载后而不是在开始时被调用吗(例如:在标题中调用)?
- Ruby on Rails javascript getting truncated
- 在ruby on rails中使用jquery getJSON获取数据
- Ruby On Rails应用程序与angularJS关于AJAX
- Angular JS/Rube-on-Rails-控制器未识别错误
- ruby on rails:用于不同页面的选项卡
- Ruby On Rails Ajax 提交提交两次
- Ruby on Rails - 引导旋转木马按钮不起作用
- 按索引迭代数组时,单击提交按钮Ruby on Rails
- 如何将.js从视图移动到单独的资产 - Ruby On Rails
- 如何在Ruby on Rails中集成Arbor.js
- geolocation with javascript and ruby on rails
- Ruby on Rails 4:在 Rails Web 应用程序中添加 Javascript 文件时遇到问题
- Window.onload 未被调用 [Ruby on Rails] [Vanilla Javascript]
- 如何在Ruby on Rails会话过期时重新加载或刷新页面
- 重命名上传的文件Ruby On Rails
- Ruby on Rails - grouped_collection_select error
- 带有jquery.min.map的Ruby on Rails:未能加载资源状态406
- Ruby on rails-更新ajax的PUT方法
- Heroku Ruby on Rails应用程序don't更新公共/资产目录中的未消化资产
- Ruby on rails javascript没有;无法正确加载(HTML5模板)