$.browser是未定义的错误

61

可能重复:
jQuery $.browser是否已被弃用?
最新的jQuery $.browser

我正在使用JQuery加载代码,我已经查找了应该加载的所有文件,但找不到JQuery加载的位置。 为了使我包含的文件能正常工作,我需要再包含第二个JQuery脚本,因为第一个脚本加载太晚。 然而,这会导致其他错误,因为第一个未声明的JQuery文件加载时会覆盖定义。 因此,我现在正在尝试使用jQuery.noConflict来解决这个问题。

以下是我的代码中一些用法示例:

<script>
var $jquery190 = jQuery.noConflict();
</script>


jQuery.noConflict();
    (function($) {
//$(function() {
// more code using $ as alias to jQuery
//});
 $.fn.setupSpinner = function () {
        $(this)
            .ajaxStart(function () {
                $(this).show();
            })
            .ajaxStop(function () {
                $(this).hide();
            })
        ;
        return this;
    };


})(jQuery);


$jquery190(config.ids.datepicker + ", " + config.ids.todatepicker).datepicker("disable");
$jquery190(config.ids.datepicker + ", " + config.ids.todatepicker).datepicker("setDate", "-2d");
$jquery190(config.ids.datepicker + ", " + config.ids.todatepicker).datepicker("enable");
//        $(config.ids.datepicker + ", " + config.ids.todatepicker).datepicker("hide");

替换一些内容后,我遇到了这个错误:

TypeError: $.browser is undefined
[Break On This Error]   

...= buttonPanel + ($.browser.msie && parseInt($.browser.version,10) < 7 && !inst.i...

网站链接在这里:Link。这是什么原因,我该如何解决?


5
这个问题的原因是jQuery 1.9版本移除了$.browser,所以要么使用旧版本的jQuery,要么不使用$.browser,或者不使用依赖于它的插件。请参考文档:http://api.jquery.com/jQuery.browser/。 - Felix Kling
可能重复:https://dev59.com/Tm3Xa4cB1Zd3GeqPcTop。 - VisioN
1个回答

106

13
那么这个问题的解决方案是什么? - SaurabhLP
17
请使用 https://github.com/jquery/jquery-migrate/#readme,它可以恢复被弃用的函数。 - adinas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接