1

要素が存在するかどうかに応じて、jQueryを使用してonClickイベントをサイト上の特定の要素にアタッチしています。例:

$(document).ready(function() {
  if ( $("#webform-client-form-15897").length ) {
    $("#edit-submit")
      .attr("onClick", "_gaq.push(['_trackPageview', '/feedback-submitted'])");
  }
});

これは、フォームの[送信]ボタンなどで見事に機能し、偽のpagevisitを介して目標を追跡できます(イベントではこれが許可されないため、偽のトリガー)。

問題は、ユーザーをサイトから除外する同様のonClickイベントをアンカーHTML要素に設定した場合、同じコードを使用してアラート( "fooなど)をアタッチしても、アナリティクスに何も表示されないことです。 ")イベントが明確に機能していることを示し、ポップアップが表示されます。

jQueryで処理された後の実際のアンカー要素は次のようになります。

<a href="http://www.example.com/foo" onclick="_gaq.push(['_trackPageview', '/ad-clicked'])">Anchor text</a>

この例がいくつかのチュートリアルで使用されており、ブレークポイントとalert()テストで追跡できる限りコードが実行されているので、何が間違っていますか?

4

1 に答える 1

3

通常、問題は、ユーザーが次のページに移動する前にGAコードを実行するのに十分な時間がないために発生します。リンクが新しいウィンドウ(target = "_ blank")を開いた場合、元のページがまだそこにあり、コードの読み込みが完了する可能性があるため、これは問題ではありません。これを処理する一般的な方法は、settimeoutを使用してリダイレクトを少し遅らせ、GAスクリプトの実行時間を確保することです。実装の詳細については、以下のリンクにアクセスしてください。

http://www.google.com/support/analytics/bin/answer.py?hl=en&answer=55527

于 2011-01-27T14:40:01.303 に答える