Wordpress第一次加载很好,但第二次加载失败

时间:2017-07-04 05:07:33

标签: javascript jquery wordpress

我有一个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

我安装了自动优化和更高版本的插件。尽管存在错误,网站仍然可以正常加载,但是soliloqui滑块失败了。 如果我从折叠插件上方禁用优化Javascript加载,则错误消失,但这超出了目的。

请帮忙!

1 个答案:

答案 0 :(得分:0)

我认为您的Optimize Javascript Loading使用$ .browser ... 自jQuery 1.9起,$.browser方法已被删除。

  

jQuery.browser() removed

     

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

     

- jQuery Core 1.9 Upgrade Guide

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

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

<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>

试试以上功能...