私のhtmlには次のようなアウトバウンドリンクがあります:
<a href="http://www.example.com" class="gaLink1"
target="_blank" onCLick="ga_track_link('action', '123', 'abcde', 'fghij')">
<img src="http://www.example.com/image.jpg" alt="image name" height="180" style="max-width:153px;max-height:150px;" />
</a>
したがって、この画像をクリックすると、target="_blank" があるため、リンク www.example.com が新しいタブで開くはずです。また、onCLick イベントは、次のように定義されている関数 ga_track_link を呼び出します。
function ga_track_link(action, id, name, source) {
_gaq.push(['_trackEvent', 'category 1', action, id+': '+name]);
_gaq.push(['_trackEvent', 'category 2', 'example', source, 15]);
}
この関数は、html の最後 (ボディ セクション内) のスクリプト セクションで定義されます。
GA で観察していますが、両方のイベントが追跡されています (カテゴリ 1 と 2) が、両方が追跡される回数は等しくありません。カテゴリ 2 はほぼ半分の頻度で表示されるため、2 番目のイベントが常に発生しているわけではないと思います。
このリンクhttp://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55527を見つけました。これ は、関数「ga_track_link」を html の head セクションに配置し、return False をオンクリック機能。
JavaScriptでいつ、なぜ「falseを返す」のような他のいくつかの回答によると? 、return false ステートメントは、イベント (onClick) が発生しないように指示しますが、2 つの GA イベントが発生した後に発生させたいので、これは私が望むものではありません。
だから、私は3つの質問があります:
1) 1 回のクリックで (_trackEvent を使用して) 2 つ以上の GA イベントを発生させることに問題はありますか? それを行う最良の方法は何ですか?
2) 上記の Google アナリティクスのリンクで、関数を html の head セクションに配置する必要があると記載されているのはなぜですか?
3)誰かが「return false」ステートメントの目標とそれを正しく使用する方法を明確にしてもらえますか?