谷歌分析公司;iFrame

谷歌分析公司;iFrame,iframe,google-analytics,Iframe,Google Analytics,所以我有一个简单的页面,当用户点击一个链接时,一个iframe就会打开。我正在尝试使用 在iframe内部-但它似乎不起作用?我读了这一页 code.google.com/api/analytics/docs/tracking/gaTrackingSite.html#trackingIFrames 似乎我使用“iframe.src=pageTracker.\u getLinkerUrl”将一些cookie信息传递给iframe-问题是我想跟踪iframe内部的内容(例如事件等),我得到了一个“

所以我有一个简单的页面,当用户点击一个链接时,一个iframe就会打开。我正在尝试使用

在iframe内部-但它似乎不起作用?我读了这一页

code.google.com/api/analytics/docs/tracking/gaTrackingSite.html#trackingIFrames

似乎我使用“iframe.src=pageTracker.\u getLinkerUrl”将一些cookie信息传递给iframe-问题是我想跟踪iframe内部的内容(例如事件等),我得到了一个“pageTracker未定义”错误

我需要包括像这样的内容吗

<script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </script>

var gaJsHost=((“https:==document.location.protocol)?”https://ssl." : "http://www.");
write(unescape(“%3Cscript src=”+gaJsHost+“google analytics.com/ga.js”type='text/javascript'%3E%3C/script%3E”);
在iFrame内部-使页面跟踪器工作。我认为“发布者UA-XXXXX-X”ID将通过cookies传递,并且一切都将正常工作


任何想法

是的,您必须在框架页面中包含GA样板代码

<script type="text/javascript">
    var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
    document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>

var gaJsHost=((“https:==document.location.protocol)?”https://ssl." : "http://www.");
write(unescape(“%3Cscript src=”+gaJsHost+“google analytics.com/ga.js”type='text/javascript'%3E%3C/script%3E”);
浏览器将每个框架视为一个单独的窗口,具有单独的dom和javascript环境,因此为了能够访问框架页面中的pageTracker,您还必须在该页面中包含ga.js脚本

注意,您还需要添加

<script type="text/javascript"> 
 try {
  var pageTracker = _gat._getTracker("UA-XXXXXX-X");
 } catch(err) {}
</script>

试一试{
var pageTracker=_gat._getTracker(“UA-XXXXXX-X”);
}捕获(错误){}
因此,pageTracker对象实际上已定义。
最后,还请注意,框架页面和框架页面上的两个pageTracker javascript对象(尽管它们具有相同的标识符)是不同的JS对象。这是因为JS将每个帧保存在自己的窗口对象中,这实际上意味着一个JS作用域。

您的页面在同一子域中吗?
<script type="text/javascript"> 
 try {
  var pageTracker = _gat._getTracker("UA-XXXXXX-X");
 } catch(err) {}
</script>