0

我在使用 Google Analytics 和 _trackEvent 时遇到了一些菜鸟问题。

在文档中使用它似乎很简单,但我无法让这个简单的例子工作。对 _trackEvent 的调用失败并显示“TypeError: o is undefined”

对 _trackPageview 的调用成功,我可以在分析仪表板中看到它已更新。

我试图偷看 ga.js 以了解发生了什么 - 只是为了展示它而头疼!

这是我第一次涉足 GA——尤其是自定义事件。帐户是新的。一切似乎都正确设置了——但我可能不知道是不是这样!

看起来很简单 - 但显然我错过了一些东西。非常感谢任何有关移除我的眼罩的帮助!

-vs

示例 HTML - 只需要一个跟踪代码。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
    <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>
    <script type="text/javascript">
      var pageTracker;
      try {
        pageTracker = _gat._getTracker("UA-XXXXXX-1");
        pageTracker._trackPageview();        
      } catch(err) { 
        console.log(err.toString()); 
      }
      $(document).ready(function() {
          try {
            pageTracker._trackEvent('my_category', 'my_action', 'my_optional_label', 42); 
          } catch(err) { 
            console.log('trackEvent ' + err.toString()); 
          }
      });
      </script> 
  </head>
  <body>
  </body>
</html>
4

2 回答 2

0

原来需要在调用 _trackEvent 之前调用 _initData()。不知道为什么会这样,但它现在似乎有效。希望它可以帮助别人。修改后的样品..

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
    <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>
    <script type="text/javascript">
      var pageTracker;
      try {
        pageTracker = _gat._getTracker("UA-xxxxx-1");
        pageTracker._trackPageview();        
      } catch(err) { 
        alert(err.toString()); 
      }
      $(document).ready(function() {
          try {
            pageTracker._initData(); // <<--- The addition. 
            pageTracker._trackEvent('my_category', 'my_action', 'my_optional_label', 42); 
          } catch(err) { 
            alert('trackEvent ' + err.toString()); 
          }
      });
      </script> 
  </head>
  <body>
  </body>
</html>
于 2009-11-14T19:33:10.010 回答
0

代码块的菜鸟错误!这是完整版。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script>
    <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>
    <script type="text/javascript">
      var pageTracker;
      try {
        pageTracker = _gat._getTracker("UA-xxxxxxx-1");
        pageTracker._trackPageview();        
      } catch(err) { 
        console.log(err.toString()); 
      }
      $(document).ready(function() {
          try {
            pageTracker._trackEvent('my_category', 'my_action', 'my_optional_label', 42); 
          } catch(err) { 
            console.log('trackEvent ' + err.toString()); 
          }
      });
      </script> 
  </head>
  <body>
  </body>
</html>
于 2009-11-14T17:16:05.140 回答