2012-02-29 7 views
2

このスクリプトを動作させるのは苦労しています。私が達成しようとしているのは、Googleアナリティクスでイベントトラッキングを使用して、どのスライドを見ているかを渡す方法です。jQueryを使用してGoogleアナリティクスのイベントトラッキングスクリプトに動的データを渡す方法

SlidedeckのためのjQueryのコード(と、それはAPIです:http://www.slidedeck.com/actions/)私はイベントを追跡するために使用しているは、次のとおりです。

$('#nextArrow').click(function() { 
    $('.slidedeck').slidedeck().next({ 
    before: function(deck){ 
    // Alert the current slide number before animating 
    }, 
    complete: function(deck){ 
     alert(deck.current); // Alert the current slide number after animating 
    } 
    }); 
}); 

これが正常に次のボタンが正常にアニメーションした後に表示されているスライドを私に警告しますSlideecks API deck.currentを使用して次のスライドに移動します。

私が行う必要があるのは、これらの行に沿って何かに変換することです。

$('#SSnext').click(function() { 
      $('.slidedeck').slidedeck().next({ 
     before: function(deck){ 
     // Alert the current slide number before animating 
     }, 
     complete: function(deck){ 
      var slideNumber = function(deck){(deck.current)}; 
     _gaq.push(['_trackEvent', 'slidedeck', 'slides', slideNumber]); 
     } 
     }); 
    }); 

しかし、これは機能しません。

complete: function(deck){ 
     var slideNumber = function(deck){(deck.current)}; 
    _gaq.push(['_trackEvent', 'slidedeck', 'slides', slideNumber]); 
    } 

、誰もがそれは素晴らしいことだ、Googleアナリティクスのためgaq_push文字列に変数を渡す方法についていくつかの洞察を当てることができた場合:私は、私は、このビットは非常に間違ってきていると思います。

答えて

4

2番目の例では、なぜslideNumberを関数にしているのかわかりません。代わりにdeck.currentを渡すだけで済みます。次のコードを試してください:

complete: function(deck){ 
    var slideNumber = deck.current; 
_gaq.push(['_trackEvent', 'slidedeck', 'slides', slideNumber]); 
} 

正しく動作するはずです。

+0

今や信じられないほど愚かな気分になりました。そうです、完璧に動作します。どうもありがとうございます! – JayDee

関連する問題