在Rails 3.2项目中,我有一个application.js文件,如下所示:
//= require jquery
//= require jquery.hoverIntent
//= require jquery_ujs
//= require my_custom_js
在我的布局中,我们只是引用<%= javascript_include_tag 'application' %>
my_custom_js.js
中的代码实际上使用了来自jquery.hoverIntent.js
的插件,但是当我加载页面时,我收到一个javascript错误,指出对象上没有可用的hoverIntent
函数虽然我可以检查元素并查看对现有文件的健康引用。
这里的踢球者是,如果我移动application.js
的两个引用 out ,它就会加载得很好。即:
<%= javascript_include_tag 'application' %>
<%= javascript_include_tag 'jquery.hoverIntent' %>
<%= javascript_include_tag 'my_custom_js' %>
我在这里缺少什么?
答案 0 :(得分:0)
在/layouts/application.html.erb
中,在head
部分添加这些代码段以加载jquery。
<%= javascript_include_tag "jquery" %>
<%= javascript_incldue_tag 'jquery.hoverIntent' %>
<%= javascript_incldue_tag 'my_custom_js' %>
这会在你的所有页面上加载jquery。
如果您需要有关application.js无效的更多信息,请阅读this以了解更多信息。我唯一的想法是,您的插件未命名为jquery.hoverIntent
或您的路径错误。
答案 1 :(得分:0)
行。我想通了,我感到愚蠢。资产管道按预期工作,但我之前已经预编译了资产,它正在提供一个先前预编译的application.js
,它正在重新加载jQuery,但没有插件。