javascript - 未捕获的类型错误:$.browser 未定义
问题描述
我在我的网站上遇到了一个我还没有弄清楚的问题。我对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));
});
});
解决方案
似乎你得到了它的工作,但这个问题已由主题开发人员修复。只需要更新the7主题。我有一个客户也遇到了同样的问题,他几年前有人建立了他们的网站,但没有维护它。
您可能使用的是第 3 版或第 4 版,目前是第 9 版。升级过程需要注意几个步骤,因此请务必在升级之前进行备份和阅读。我担心升级会导致不必要的更改,但该网站运行良好。我会注意到他们有一个基于它的子主题。
https://support.dream-theme.com/knowledgebase/procedure-to-update-the7-v3-and-v4-to-the7-v7/
推荐阅读
- javascript - 我创建了一个图层控件,但没有出现复选框
- python - 实施 MSE 损失
- list - Gson在kotlin中反序列化整数数组
- python - U-net:TypeError:__call__() 缺少 1 个必需的位置参数:“输入”
- r - 情节持续时间频率的置信区间
- android - Lateinit 属性未在 Fragment 上初始化
- javascript - 使用 ion-img 等待 url 键?
- angular - (角度单元测试)如何在 Jasmin 中模拟输入属性?
- spring - 为什么我的项目中的库版本与它的父 pom 声明不同?
- python - 需要在我的 lambda 函数中应用过滤器,但获取错误函数是不可迭代的