2013-10-05 44 views
0

上在應用程序文件,我加載JS是這樣的:JavaScript文件未正確安裝的Amazon EC2服務器

%script{:type => 'text/javascript', :src => 'https://www.google.com/jsapi'} 
%script{:type => "text/javascript", :src => "http://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.3/jquery.min.js"} 
%script{:type => "text/javascript", :src => "/assets/jquery_ujs.js?body=1"} 

我需要通過%script標籤加載它們。 但JS不起作用。當我打開Firebug找出原因,有以下幾點:

Uncaught ReferenceError: jQuery is not defined jquery_ujs.js?body=1:394 

以上所有的路徑是正確的,當我展示生成的應用程序的HTML輸出,並單擊路徑JS文件,所有的都在工作。

因此,怎麼了?爲什麼這些錯誤?

回答

0

看看jQuery是否被加載兩次。在Chrome開發工具中,加載網絡選項卡,然後重新加載頁面。點擊名稱列按名稱排序,看看你有沒有兩個jQuerys。這發生在我之前。 jQuery的第二次加載覆蓋了jQuery名稱空間,並且與該名稱空間關聯的任何庫都不起作用。

0

問題出在JavaScript文件中,這些文件是外部加載的(來自第三方提供商,如Github或Google)。

當我下載這些文件並將它們保存到/assets文件夾中時,一切正常。