2012-10-02 166 views
1

我注意到,stackoverflow有一些JS代码,它会生成:“堆栈溢出需要来自另一个域的外部JavaScript,它被阻止或无法加载”。 Google Analytics(分析)未正确加载时,刚好发生在我身上。Google Analytics(分析)加载测试失败

我该怎么做这样的事情?

注意:我可以正确加载所有其他的JS,这仅适用于有时要么永不加载,要么永远不会加载的谷歌分析。

当我检查的代码,他们有:

StackExchange.init = function() { 
    var e = function (a) { 
     if (!window.jQuery) if ("complete" != document.readyState) setTimeout(function() { 
      e(a) 
     }, 1E3); 
     else { 
      var d = document.createElement("div"); 
      d.id = "noscript-padding"; 
      var g = document.createElement("div"); 
      g.id = "noscript-warning"; 
      g.innerHTML = a + " requires external JavaScript from another domain, which is blocked or failed to load."; 
      document.body.insertBefore(d, document.body.firstChild); 
      document.body.appendChild(g) 
     } 

但我不知道什么是与的setTimeout()

回答

0

回事setTimeout他们等到页面完全加载。函数调用e本身,直到document.readyStatecomplete其中1E3为1000 => 1秒:

if ("complete" != document.readyState) setTimeout(function() { e(a) }, 1E3); 

如果您愿意为谷歌Analytics(分析)做同样的检查:javascript - Detect if Google Analytics is loaded yet?

相关问题