为什么谷歌分析事件没有触发/保存
Why Isn't Google Analytics Event Firing/Saving?
我有一个谷歌分析跟踪器加载到iFrame中:
(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-my-id-here');
ga('set', 'location', 'http://foo.com/bar');
ga('set', 'title', 'Awesome');
ga('send', 'pageview');
我也有自定义的Javascript尝试在同一页面上跟踪富客户端应用程序中的事件,该应用程序引用了上面的ga实例,并尝试发送事件:
ga('send', 'event', 'my_category', 'my_event', 'my_value');
当我加载页面时,我看到正确跟踪了初始页面浏览。 当我单击并启动自定义事件跟踪时,JavaScript 会执行并且不会抛出错误。 它也不会注册任何事件。
确保您尝试调用以下 snippte 的页面具有分析.js加载(如果它在 iframe 中)
ga('send', 'event', 'my_category', 'my_event', 'my_value');
这个问题最终变成了JavaScript范围的问题。
只有当所有调用都适当地在同一 Javascript 范围内时,analytics.js
应用程序才有效。 我试图在不同的页面范围内触发 GA 事件(由于嵌入式 JS 应用程序和 iFrame,这很复杂)。
解决方案如下:
<script type="text/javascript">
(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-my-id');
ga('set', 'hostname', 'awesome.com');
ga('set', 'location', '/path/to/awesome');
ga('set', 'referrer', 'REFERRER_VALUE');
ga('set', 'title', 'Awesome App');
ga('send', 'pageview');
window.trackGAEvent = function(eventName, value) {
ga('send', 'event', 'awesome_app', eventName, value);
}
</script>
诀窍是将ga
事件封装send
调用。 我可以通过向下钻取 DOM 从其他上下文调用此方法,但我不能直接从适当的上下文外部调用 GA 应用。
相关文章:
- 谷歌文档如何拦截Ctrl-S/Command-S来保存文档而不是html页面
- 如何使用谷歌脚本将html表单数据保存到谷歌电子表格中
- 谷歌电子表格脚本:如何保存“;永远”;
- 谷歌地图API保存访问历史
- 如何将对象保存到谷歌UI实例中
- 谷歌地图 API v3.0 保存对标记的引用
- 谷歌地图-保存动态地图
- Javascript-将谷歌趋势url中的数据保存到PHP数组中
- 我的jquery代码在谷歌chrome控制台中工作,而不是在保存它之后
- 保存按钮未附加到右侧信息窗口,谷歌地图
- 在谷歌地图中指定保存的路点's方向服务
- 谷歌图表将缩放的图像保存为PNG
- 通过 php 保存谷歌图表
- 是否可以在浏览器中保存谷歌/必应地图's缓存
- 在我们的数据服务器上保存谷歌地图中的gData
- 保存谷歌地图(放置在iframe)作为一个图像使用HTML/Javascript Windows Metro应用程序
- 保存谷歌图表为pdf
- 如何保存谷歌搜索页面中的文本
- 我如何保存谷歌地图v3圆形和矩形叠加在数据库中没有错误
- 我如何保存谷歌图表PNG与PHP