2017-01-19 10 views
1

navのリスト項目を繰り返し処理するループを設定しようとしていますが、各アンカータグからtitle属性を取得して解析用のコード行に入れることができます。それはタイトルを言う。Googleアナリティクスのイベントをナビゲーション項目に追加

$(document).ready(function() { 
function analytics(e) { 
    var titles = $('#trending-nav li.cms a').attr("title"); 
    ga('atealium.send', 'event', 'Navigation', "Trending", titles); 
}; 

var trends = $("#trending-nav li a"); 
for (var i = 0; i < trends.length; i++) { 
    EventUtil.addHandler(trends[i], 'click', analytics); 
} 
}); 

使用する正しいコードを見つけるのに問題があります。ここでは基本的なリストを使用しています。私はコードをどこに置くべきか、またはnavの各項目のタイトルを引くための正しい形式がわからない。

<nav class="clearfix inner" id="tren"> 
<ul> 
    <li><a class="tren">TREN</a></li> 
<li class="cms "> 

     <a href="/age" title="Agency A-Z">Agency A-Z</a> 
</li> 
<li class="cms "> 

     <a href="/brand/brand-a-z" title="BRAND A-Z">BRAND A-Z</a> 
</li> 
<li class="cms "> 

     <a href="/christmas/christmas-ads" title="CHRISTMAS ADS">CHRISTMAS ADS</a> 
</li> 
<li class="cms "> 

     <a href="/johnlewis" title="JOHN LEWIS">JOHN LEWIS</a> 
</li> 
<li class="cms "> 

     <a href="/hav" title="HAV">HAV</a> 
</li> 
</ul> 

答えて

1

あなたは、この使用してjQueryのすべてを処理できる必要があります。

EventUtil.addHandlerの代わりに、すでにjQueryを使用しているため、jQueryのクリックイベントリスナーを利用してください。この例では、#tren navブロック内のすべてのアンカーを選択した後、gaと呼び出して、$(this).attr('title')を使用してタイトルを渡すことができます。あなたが$(this)の使用に慣れていない場合は、ここではjQueryのドキュメントをチェックアウト:あなたの助けをhttp://api.jquery.com/on/

$(document).ready(function() { 

    $("#tren a").on('click', function() { 
    ga('atealium.send', 'event', 'Navigation', "Trending", $(this).attr("title")); 
    }); 

}); 
+0

おかげで多くのことをBlexy – shaneklive

関連する問題