【问题标题】:Wordpress loading fine first time, but fails loading the second timeWordpress 第一次加载正常,但第二次加载失败
【发布时间】:2017-07-04 05:07:32
【问题描述】:

我有一个 wordpress 网站,第一次加载完美,但是,如果我在任何浏览器中重新加载它,它会给我各种各样的错误,比如 FireFox 中的这些错误:

TypeError: $.browser is undefined
ReferenceError: Backbone is not defined
ReferenceError: _ is not defined
or
TypeError: document.body is null

这在 Chrome、IE 和 Opera 中:

VM236:1 Uncaught TypeError: Cannot read property 'msie' of undefined
    at eval (eval at <anonymous> (autoptimize_2389e63….js:8), <anonymous>:1:633)
    at eval (eval at <anonymous> (autoptimize_2389e63….js:8), <anonymous>:1:12848)
    at autoptimize_2389e63….js:8

我安装了 autoptimize 和折叠插件。尽管出现错误,该站点仍可正常加载,但独白滑块失败。 如果我从折叠插件上方禁用优化 Javascript 加载,错误就会消失,但这超出了目的。

请帮忙!

【问题讨论】:

    标签: javascript jquery wordpress


    【解决方案1】:

    我认为您的优化 Javascript 加载使用 $.browser... 自 jQuery 1.9 起,$.browser 方法已被删除。

    jQuery.browser() removed

    jQuery.browser() 方法自 jQuery 1.3 起已被弃用,并在 1.9 中被删除。 如果需要,它可以作为 jQuery Migrate 插件的一部分使用。我们建议将特征检测与 Modernizr 等库一起使用。

    ——jQuery Core 1.9 Upgrade Guide.

    如升级指南中所述,您可以尝试使用jQuery Migrate plugin 来恢复此功能并让 jQuery 工具正常工作。

    您可以查看此解决方案。这很简单,只需将以下代码行复制并粘贴到标题中即可。

    <script type="text/javascript">
        jQuery.browser = {};
        (function () {
            jQuery.browser.msie = false;
            jQuery.browser.version = 0;
            if (navigator.userAgent.match(/MSIE ([0-9]+)\./)) {
               jQuery.browser.msie = true;
               jQuery.browser.version = RegExp.$1;
            }
        })();
    </script>
    

    试试上面的功能...

    【讨论】:

      猜你喜欢
      • 2022-08-15
      • 1970-01-01
      • 2012-01-26
      • 2016-08-25
      • 2012-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多