2012-07-07 21 views
9

我剛剛完成了Code School's介紹JQuery的過程,jQuery Air: First Flight。這是學習jQuery基礎知識的好方法,當我完成時,我很興奮地爲我的新的小rails 3.2應用程序添加一些jQuery。但是,如何做到這一點並不明顯。將JQuery或Javascript(不是coffee.script)代碼添加到Rails 3.2應用程序中?

默認情況下,rails 3.2附帶了jquery-rails和咖啡欄寶石。新的3.2應用程序都設置了咖啡腳本的形式接受JavaScript和jQuery。雖然我很快就會學習咖啡腳本,但現在我所擁有的只是jquery。

更具體地說,我應該添加類似:

<script type="text/javasript" src= "https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 

到我app/views/layouts/application.html.erb文件的頭部或者是所有照顧jQuery的軌道寶石和

<%= javascript_include_tag "application" %> 

已經在那裏?

在我的應用程序中,我把jQuery代碼?隨着我生成的每個新控制器,rails 3.2在app/assets/javascripts/目錄中創建一個不錯的[new_controller].js.coffee文件。如果我把它放在.coffee文件中,Javascript不起作用。任何人有任何想法?

回答

11

已經嘗試四周,在Code School用好鄉親對應,我拿出來與他人如下回答可能會覺得有用:

的Rails 3.2的應用程序都是現成的接受CoffeeScript的。事實上,每個新控制器都會自動生成一個[new_controller] .js.coffee文件,準備接受新的咖啡標記。雖然我很快就會開始使用coffeescript,但剛剛完成JQuery Air: First Flight,我所知道的僅僅是jQuery。

這裏是一個需要做的jQuery的增加人的Rails的3.2應用程序與 默認情況下,資產管道設置:

1)將javascript_include_tag(:application)app/views/layouts/application.html.erb文件。 Code School的Adam Fortuna指出,將這條線放在頁腳中是很典型的,這聽起來像是很好的建議。這可能會允許頁面的其餘部分在javascript之前加載。

2)在'app/assets/javascripts /'目錄中創建一個新文件,其中 後綴.js,在我的例子中是user.js.注意:不要將您的jQuery 文件命名爲與自動創建的.js.coffee文件相同的文件,也不會將其讀取爲 ,可能是因爲單獨使用了coffeescript文件。

3)將你的jQuery javascript添加到你的心中!它已經是你的3.2應用程序的一部分,包含在jquery-rails寶石中。

如果其他人瞭解在rails 3.2應用程序中使用jquery和javascript而不是coffee-script,請添加。這就是說,我的下一步是學習咖啡腳本!

1

你不需要做任何事情。 Rails默認會爲你提供jquery。如果你的文件的擴展名不是咖啡,那麼你將不需要使用咖啡腳本。

你可以閱讀this以更好地理解魔法。

如果你必須添加你自己的,你可以寫這樣的事情:

<%= javascript_include_tag "http://example.com/main.js" %> 

閱讀this瞭解如何javascript_include_tag作品。

+0

我的天啊SO社區快!在9分鐘內,我回答了自己的問題 - 花了一整天的時間與代碼學校的支持工作 - 3人也回答了這個問題!非常感謝。我現在明白了。下次我從SO開始。 – BenU 2012-07-07 14:43:12

0

確保//= require jquery是application.js或application.js.coffee的頂部,如果您安裝了jquery-rails gem,那麼您應該很好。

相關問題