2012-04-20 13 views
0

リストの各リンクのonclick属性内にJavaScriptコードを追加したいと思います。このコードは、Googleアナリティクスのイベントトラッキングに使用されます。リンクのonclick属性にコードを追加

これはリストである:

<ol> 
    <li> 
     <a href="">Alberto Guardiani</a> 
    </li> 
    <li> 
     <a href="">Antica Bottega</a> 
    </li> 
    <li> 
     <a href="">Ash</a> 
    </li> 
    <li> 
     <a href="">Ballin</a> 
    </li> 
</ol> 

そして、これはjQueryのonclickのコードを追加した後、それがどうあるべきかです:

<ol> 
    <li> 
     <a href="" onclick="_gaq.push(['_setCustomVar', 2, 'Designer', 'text1', 3]);">text1</a> 
    </li> 
    <li> 
     <a href="" onclick="_gaq.push(['_setCustomVar', 2, 'Designer', 'text2', 3]);">text2</a> 
    </li> 
    <li> 
     <a href="" onclick="_gaq.push(['_setCustomVar', 2, 'Designer', 'text3', 3]);">text3</a> 
    </li> 
    <li> 
     <a href="" onclick="_gaq.push(['_setCustomVar', 2, 'Designer', 'text4', 3]);">text4</a> 
    </li> 
</ol> 

それはjQueryのappendでも可能です場合、私は見当がつかないこの問題で何をすべきか何らかの解決策を提案できますか?

+0

あなたはこれらのリンク上のID /クラスのいくつかのフォームなしでjQueryを使ってそれを行うのに苦労するつもりです。個人的に私はこのサーバー側をやっていますが、私はこれらの値がデータベースから来ていると推測しています。 – Dunhamzzz

+0

@Dunhamzzz 'onclick'属性はとにかく使用されるべきではないので、私はそれをサーバー側ではしません。 – noob

答えて

5
$("ol li a").click(function() { 
    _gaq.push(['_setCustomVar', 2, 'Designer', $(this).html(), 3]); 
}); 

編集:

それはあなたがCに忘れてしまっている可能性が動作しない場合ドキュメントが完全にロードされている場合はどうでもいい。

この場合、コードをラップする必要があります。 jQueryのを使用して

jQuery(document).ready(function($) { 
    /* jQuery code */ 
}); 
+0

それはそれを行う良い方法のようです。実際に動作しているかどうかをテストするために、私は_gaq.push()をalert()に置き換えましたが,clickには警告はありません。私は何か間違っているのですか? – zekia

+0

それは[work](http://jsfiddle.net/ZLqSm/) – noob

+2

また、 '_setCustomVar'はカスタム変数を設定するだけで、GAへのトラッキングリクエストは実際には発生しません。 '_trackEvent'のようなものも呼び出す必要があります –

0

あなたの質問を理解する限り、これはclickハンドラを使用して行うことができます。

Htmlの

<li> 
    <a class="someClassName" href="">Alberto Guardiani</a> 
</li> 

jQueryの

$(".someClassName").click(function() { 
    _gaq.push(['_setCustomVar', 2, 'Designer', 'text1', 3]); 
}); 
2

$('ol li a').click(function() { 
    _gaq.push(); // your code here 
}); 
関連する問題