本地查看页面锁定了一些浏览器

时间:2014-04-20 13:09:16

标签: google-analytics

我刚刚开始使用较新的"通用"替换我原有的Google Analytics跟踪代码。代码,并在本地查看页面遇到问题。我不是在谈论使用localhost - 我只是在谈论打开像 C:\ My Documents \ whatever \ index.html 这样的页面。 FF28没问题。 Chrome34窒息了一段时间,但恢复了。 IE11完全锁定,它的任务管理器时间

原因很明显 - 在本地查看页面时,它正在尝试从 file://www.google-analytics.com/analytics.js 加载脚本, #39; t存在。

有谁知道怎么解决这个问题?在将内容上传到任何地方之前,我会进行跨浏览器测试 - 我真的需要能够在本地查看页面。

我发现替换一段代码片段似乎有效,但我不知道它可能会产生什么不良影响。取而代之:

(window,document,'script','//www.google-analytics.com/analytics.js','ga')

使用:

(window,document,'script','http://www.google-analytics.com/analytics.js','ga')

似乎工作,但......?

2 个答案:

答案 0 :(得分:0)

我的方法似乎有效,但只要我确定总是使用 http:协议为我的网页提供服务, 永远 https:

"书"解决方案似乎是这样的:

})(window,document,'script',('https:' == document.location.protocol ? 'https://' : 'http://') +'www.google-analytics.com/analytics.js','ga');

答案 1 :(得分:0)

避免“本地锁定”问题的另一种解决方法:

if(location.protocol!=='file:') {
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-999999-9');
  ga('send', 'pageview');
}