0

我一直在研究我拥有的 Rails 3.2 应用程序的另一个分支,当我切换回主应用程序时,没有任何工作。Firebug 告诉我,我有一堆不同的 jQuery 插件,它们只是因为这个错误而失败:

$.browser is undefined

这个调用是由 4 个不同的插件发出的,它们都失败了,这导致我的页面退出渲染。我无法弄清楚问题所在。我的 application.js 看起来像这样:

//= require jquery
//= require jquery_ujs
//= require jquery.ui.autocomplete
//= require jquery.ui.sortable
//= require jquery.ui.tabs
//= require jquery.ui.dialog
//= require jquery.ui.Multiselect
//= require jquery.ui.effect-highlight  
//= require jquery.corner
//= require jquery.cycle.lite
//= require jquery.deserialize
//= require jquery.form
//= require jquery.ifixpng
//= require jquery.livequery.min
//= require jquery.Localisation.min
//= require jquery.query-2.1.7
//= require jquery.shadow
//= require jquery.tablesorter.min
//= require jquery.tools.min
//= require jquery.urldecoder.min
//= require magiczoom
//= require colorpicker
//= require jquery.ScrollTo.min
//= require jquery.ba-bbq.min
//= require_tree .
//= require dataTables/jquery.dataTables
//= require dataTables/jquery.dataTables.api.fnSetFilteringDelay

任何帮助深表感谢。我确定我在这里遗漏了一些简单的东西。

4

2 回答 2

4

我的猜测是您使用的 jQuery 1.9+ 已经删除了 $.browser。您需要使用jQuery 迁移插件

于 2013-04-02T18:50:23.960 回答
2

浏览器自 jQuery 1.3 起已弃用,并已在 jQuery 1.9 中删除

有关更多信息,请参阅文档

描述:包含用户代理的标志,从 navigator.userAgent 读取。我们建议不要使用此属性;请尝试改用特征检测(参见 jQuery.support)。jQuery.browser 可能会在 jQuery 的未来版本中移动到插件中。

正如他们所说,使用navigation.userAgent JavaScript 属性来检测浏览器。或者使用旧版本的 jQuery,但这不是我的首选。

于 2013-04-02T18:51:19.207 回答