【问题标题】:Uncaught TypeError: $.browser is undefined未捕获的类型错误:$.browser 未定义
【发布时间】:2020-12-21 02:33:52
【问题描述】:

我在我的网站上遇到了一个我还没有弄清楚的问题。我对js不是很熟悉。

下面是引发此错误的 js 文件中的代码。

var dtGlobals = {};
(dtGlobals.isMobile = /(Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini|windows phone)/.test(navigator.userAgent)),
    (dtGlobals.isAndroid = /(Android)/.test(navigator.userAgent)),
    (dtGlobals.isiOS = /(iPhone|iPod|iPad)/.test(navigator.userAgent)),
    (dtGlobals.isiPhone = /(iPhone|iPod)/.test(navigator.userAgent)),
    (dtGlobals.isiPad = /(iPad)/.test(navigator.userAgent)),
    (dtGlobals.isBuggy = navigator.userAgent.match(/AppleWebKit/) && "undefined" == typeof window.ontouchstart && !navigator.userAgent.match(/Chrome/)),
    (dtGlobals.winScrollTop = 0),
    (window.onscroll = function () {
        dtGlobals.winScrollTop = void 0 !== window.pageYOffset ? window.pageYOffset : (document.documentElement || document.body.parentNode || document.body).scrollTop;
    }),
    (dtGlobals.isWindowsPhone = navigator.userAgent.match(/IEMobile/i)),
    (dtGlobals.customColor = "red"),
    dtGlobals.isMobile ? (document.documentElement.className += " mobile-true") : (document.documentElement.className += " mobile-false"),
    (dtGlobals.logoURL = !1),
    (dtGlobals.logoH = !1),
    (dtGlobals.logoW = !1),
    jQuery(document).ready(function ($) {
        var e = $(document),
            t = $(window),
            n = $("html"),
            o = $("body");
        if (
            (dtGlobals.isiOS ? n.addClass("is-iOS") : n.addClass("not-iOS"),
            !$.browser.webkit || dtGlobals.isMobile ? o.addClass("not-webkit").removeClass("is-webkit") : o.removeClass("not-webkit").addClass("is-webkit"),
            jQuery.browser.msie && 10 == jQuery.browser.version && o.addClass("ie-10"),
            ($.browser.safari = $.browser.webkit && !/chrome/.test(navigator.userAgent.toLowerCase())),
            $.browser.safari && o.addClass("is-safari"),
            dtGlobals.isWindowsPhone && o.addClass("ie-mobile").addClass("windows-phone"),
            dtGlobals.isMobile || o.addClass("no-mobile"),
            dtGlobals.isiPhone && o.addClass("is-iphone"),
            !$("html").hasClass("old-ie"))
        ) {
            (dtGlobals.isPhone = !1), (dtGlobals.isTablet = !1), (dtGlobals.isDesktop = !1);
            var r = window.getComputedStyle(document.body, ":after").getPropertyValue("content");
            -1 != r.indexOf("phone") && dtGlobals.isMobile ? (dtGlobals.isPhone = !0) : -1 != r.indexOf("tablet") && dtGlobals.isMobile ? (dtGlobals.isTablet = !0) : (dtGlobals.isDesktop = !0);
        }
        $.browser.msie && $("html").removeClass("csstransforms3d");
        var i;
        dtGlobals.isMobile && !dtGlobals.isWindowsPhone
            ? $(window).bind("orientationchange", function (e) {
                  clearTimeout(i),
                      (i = setTimeout(function () {
                          $(window).trigger("debouncedresize");
                      }, 200));
              })
            : $(window).on("resize", function () {
                  clearTimeout(i),
                      (i = setTimeout(function () {
                          $(window).trigger("debouncedresize");
                      }, 200));
              });
    });

【问题讨论】:

  • $.browser() 很久以前就被 jQuery 弃用并删除了。你做了版本升级吗?
  • @charlietfl 不,我没有进行版本升级。我注意到 Wordpress 已更新到最新版本,但我已经有大约 2 年没有升级任何代码了,直到几周前它才能完全正常工作
  • 好的,你的模板可能已经升级并包含了更高版本的 jQuery。你可以从stackoverflow.com/questions/14798403/…复制函数
  • 知道了。谢谢@charlietfl 以及在另一个线程上发布该答案的人。你让我今天一整天都感觉很好。再次感谢您。

标签: javascript jquery json wordpress cross-browser


【解决方案1】:

您似乎可以正常工作,但主题开发人员已修复此问题。只需要更新the7主题。我的客户也遇到了同样的问题,他多年前就有人建立了他们的网站,但没有维护它。

您可能使用的是第 3 版或第 4 版,目前是第 9 版。升级过程需要注意几个步骤,因此请务必在升级之前进行备份并阅读。我担心升级会导致不必要的更改,但该网站运行良好。我会注意到他们有一个基于它的子主题。

https://support.dream-theme.com/knowledgebase/procedure-to-update-the7-v3-and-v4-to-the7-v7/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-05-13
    • 2021-08-11
    • 1970-01-01
    • 2022-07-04
    • 2021-11-16
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    相关资源
    最近更新 更多