Javascript 未捕获引用错误:未定义ga

Javascript 未捕获引用错误:未定义ga,javascript,google-analytics,Javascript,Google Analytics,我想知道人们点击某个按钮的次数(谷歌分析应该非常简单)。 然而,我在谷歌控制台中遇到了一个“未捕获引用错误:ga未定义”错误,无法找到如何修复它 我在头上加了一句: <script> (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();

我想知道人们点击某个按钮的次数(谷歌分析应该非常简单)。 然而,我在谷歌控制台中遇到了一个“未捕获引用错误:ga未定义”错误,无法找到如何修复它

我在头上加了一句:

     <script>

      (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-XXXXXXXX-X', 'auto') ; 

      ga('send', 'pageview');

    </script>
然后我在google analytics中设置了目标,但在控制台中仍然存在此错误

因此,我试图补充:

var gaq = gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXX-X']);
_gaq.push(['_trackPageview']);
在声明google analytics函数之前,但它会产生第二个错误,所以我放弃了它


有人知道问题是否来自我使用的脚本吗?或者,如果它来自onclick事件代码?

我用相同的JS创建了一个简单的HTML,然后单击处理程序并在本地apache服务器上运行,它运行得很好。没有看到任何引用错误

确保您没有AdBlocker或其他阻止跟踪的软件,这些软件可能会阻止GoogleAnalytics `


(函数(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]| |函数(){
(i[r].q=i[r].q | |[]).push(参数)},i[r].l=1*新日期();a=s.createElement(o),
m=s.getElementsByTagName(o)
[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(窗口,文档,“脚本”,“www.google-analytics.com/analytics.js”,“ga”);
ga(“创建”、“UA-XXXXXXXX-X”、“自动”);
ga(‘发送’、‘页面浏览’);

我的Wordpress网站也出现了同样的问题。 我的联系人表单7附加字段中有事件跟踪代码,但在安装了Monster Insights插件后,我不得不删除主题选项中的代码。忘记了联系方式中的密码,我也收到了这条信息

所以,如果你开始使用这个插件,请删除所有跟踪代码。
希望有人觉得这个信息有用

你已经解决了这个问题,但我只想补充:


确保您的浏览器允许网站跟踪您。如果您不允许跟踪,Google Analytics JS文件将不会加载,您可能会遇到此错误

打开一个新的incognito窗口。如果您已登录,则不会运行分析代码。此外,为了某些原因,Monster Insights不使用“ga”,而不是“ga”,你需要使用“\uuu gaTracker”。他们将其更改为“\uu gaTracker”。

这是所有其他对Monster Insights Wordpress插件有问题的人的后续行动,该插件将
ga
重命名为
\uu gaTracker

我不想在我的JS中硬编码
\uuuu gaTracker
(向GA发送事件)-以防后来有人删除了MonsterInsights插件而我的脚本停止工作

这是我的密码:

<script type="text/javascript">
    var ga = typeof ga === "undefined" && typeof __gaTracker !== "undefined" ? __gaTracker : ga;
    ga('send', 'event', 'Order', 'Received', 'My cool product name');
</script>

var ga=typeof ga==“未定义”&&typeof\uu gaTracker!==“未定义”__gaTracker:ga;
ga(‘发送’、‘事件’、‘订单’、‘接收’、‘我的酷产品名称’);

第一行创建一个名为
ga
的变量,该变量是原始
ga
对象,如果
ga
不存在,则为
\uu gaTracker
对象。注意:如果
ga
\uu-gaTracker
都不存在,那么当您加载HTML并在javascript控制台中输入
ga
时,您是否会得到一个函数()或者未定义?您的gaq代码将无法工作,因为这是针对经典GA的,并且与您包含的UA库(analytics.js)不兼容。另外,在上面的代码中,尝试删除换行符。我删除了换行符和gaq代码。它仍然不起作用。这是不是因为我在同一页上有两个相同的目标?类别和事件是相同的,只是标签不同。解决问题吧!这是因为它是一个旧网站(由其他人编码),到处都有标签,我没有注意到。代码是好的,它只是一个失败的网站结构。谢谢大家的帮助!谢谢,它正在工作,只是没有正确调用分析脚本。谢谢!我不知道为什么它不起作用。当我停用Monster Insights插件并获得另一个插件为我进行谷歌分析集成时,它就成功了!MonsterInsights默认情况下不会跟踪网站所有者,以防止他们扭曲自己的GA数据。总是在匿名模式下尝试代码。Chrome的DuckDuckGo插件也会阻止ga。
 <script>

    (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-XXXXXXXX-X', 'auto') ; 

    ga('send', 'pageview');

  </script>

<input type= "button" value ="Click Me" onclick="ga('send', 'event', { eventCategory: 'Book button', eventAction: 'Click', eventLabel: 'enquiry home page'});"/>
<script type="text/javascript">
    var ga = typeof ga === "undefined" && typeof __gaTracker !== "undefined" ? __gaTracker : ga;
    ga('send', 'event', 'Order', 'Received', 'My cool product name');
</script>