在我的Rails项目中,用于排序<li>
元素列表的旧jQuery代码已损坏。记录的错误是:
TypeError: $.ui.isOverAxis is not a function
我认为罪魁祸首是 jquery-ui.js (v1.9.2)的不受欢迎的旧版本正在进入我的标题,我不知道如何删除它。
不需要的jQuery文件来自jquery-rails
gem。我不明白为什么,因为我已从 application.js 文件中删除了//= require jquery-ui
行。
这是我当前的 application.js 文件:
//= require moment.min.js
//= require nicEdit.js
//= require jquery
//= require jquery_ujs
//= require jquery.ui.all
//= require_tree .
我的Gemfile已更新为最新版本的jquery-rails
gem(2.2.1)和jquery-ui-rails
gem(4.0.3)。
在开发模式的头文件中出现了旧版本的jquery(1.9.2):
<script type="text/javascript" src="/assets/jquery-ui.js?body=1"></script>
通过在开发模式下调试,我可以看出 jquery-ui.js 文件来自jquery-rails
gem。
有关如何解决此问题的任何建议吗?
更新
我已更新问题以反映我发现 jquery-ui.js 文件实际上来自jquery-rails
gem。
答案 0 :(得分:1)
似乎ActiveAdmin正在调用//= require jquery-ui
,而jquery-rails
依次从jquery-ui-rails
拉入 jquery-ui.js 文件。
该文件破坏了jquery-rails
的jQueryUI版本。
长期解决方案可能是//= require jquery.ui.all
删除 jquery-ui.js 文件,或者至少重命名它。
在短期内,我通过删除jquery-rails
并完全依赖jquery-ui-rails
解决了我的问题,完全跳过了{{1}}。