web-dev-qa-db-ja.com

キャッチされていないReferenceError:gaが定義されていません

ユーザーが特定のボタンをクリックした回数を知りたい(Googleアナリティクスでは非常に簡単なはずです)。ただし、Googleコンソールから「Uncaught ReferenceError:ga is not defined」エラーが発生し、修正方法が見つかりません。

これを頭に追加しました:

     <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>

このツールでコードを生成して、ボタンにonclickイベントを追加します http://gaconfig.com/google-analytics-event-tracking/contact-form/

onclick="ga('send', 'event', { eventCategory: 'Book button', eventAction: 'Click', eventLabel: 'enquiry home page'});"

次に、Googleアナリティクスで目標を設定しましたが、まだコンソールにこのエラーがあります。

だから私は追加しようとしました:

var gaq = gaq || [];
_gaq.Push(['_setAccount', 'UA-XXXXXXXX-X']);
_gaq.Push(['_trackPageview']);

Googleアナリティクス関数を宣言する前に、2番目のエラーが生成されるため、削除しました。

私が使用しているスクリプトに問題があるかどうかは誰にもわかりますか?または、onclickイベントコードからのものですか?

14
meij57

同じJSとクリックハンドラーを使用して単純なHTMLを作成し、ローカルのApacheサーバーで実行しましたが、正常に動作します。参照エラーは表示されません。

Googleアナリティクスをブロックしている可能性のあるトラッキングを防止するAdBlockerまたは他のソフトウェアがないことを確認してください `

 <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'});"/>
17
kiran

私のWordpress= Webサイト。コンタクトフォーム7の追加フィールドにイベントトラッキングコードがありましたが、Monster Insightsプラグインをインストールした後、テーマオプションでコードを削除する必要がありました。連絡先フォームのコードを忘れて、私もこのメッセージを受け取りました。

このプラグインの使用を開始する場合は、すべてのトラッキングコードを削除してください。誰かがこの情報が役立つことを願っています。

4
user7305940

あなたはすでにこの質問を解決しましたが、私はただ追加したかったです:

ブラウザーがサイトによるユーザーの追跡を許可していることを確認してください。追跡を許可しない場合、GoogleアナリティクスJSファイルは読み込まれず、このエラーが発生する可能性があります

3
jordy

新しいシークレットウィンドウを開きます。ログインしている場合、分析コードは実行されません。また、何らかの理由で「ga」の代わりに「__gaTracker」を使用する必要があります。MonsterInsightsは「ga」を使用せず、「__ gaTracker」に変更します。

2
Mav2287