2012-03-01 9 views
1

私は現在SlideDeckを使用しており、閲覧したスライド番号をGoogleアナリティクスで報告するように報告しています。私は、スライドデッキのAPIが特定の番号を報告した場合、それにラベルやテキストを割り当てることができるかどうかは疑問です。jQueryの数値API結果にラベル/テキストを割り当てる方法はありますか?

私が使用しているコードは次のとおりです。これが正常にGoogleアナリティクスに以下の報告

$(document).ready(function() { 
    $('#nextSlide').click(function() { 
    $('.slidedeck').slidedeck().next({ 
     before: function(deck){ 
     // do nothing 
     }, 
     complete: function(deck){ 
      var slideNumber = deck.current != null ? deck.current + ' - ' : ''; 
      _gaq.push(['_trackEvent', 'slidedeck', 'viewed slides', slideNumber + 'slide number']); 
     } 
     }); 
    }); 
    }); 

: 'slidedeck'(カテゴリー)、(ラベル) 'のスライドを見た'、 '1 - スライド番号' (値は、スライド1が表示されていると仮定します)。

私は何をしたいことなど、結果1に名前を割り当てる2、3 ..です

だから私の頭の中で(と私はこれをアプローチする方法を見当もつかないので、これは完全にコードではありません、しかし、結果の種類を証明するために:

var slideNumber = deck.current != null ? deck.current + ' - ' : ''; 
     if($(this).val() == '1'){ //function to report code as '1 - title example'} 
}); 
     if($(this).val() == '2'){ //function to report code as '2 - title example'} 
}); 

をので、GAのイベントトラッキングコードは次のようになります。

スライド1が表示されると仮定すると、次のラベルでイベントを提出
_gaq.push(['_trackEvent', 'slidedeck', 'viewed slides', slideNumber + 'was viewed']); 

「slidedeck」(カテゴリー)、「表示したスライド」(ラベル)が、誰もできれば -

を「1 - - タイトルの例が見られていた」私は私が漠然としている、と多くのことを聞いてるのよ感謝正しい方向に私を操縦するか、私が調べなければならない機能を教えてください、それはすばらしいでしょう。

EDIT:

私はNNNNNNスクリプトにこのコードを追加しました:

$(document).ready(function() { 
       var slideTitles = [ "Slide 0 title here", 
            "Slide 1 title here", 
            "Slide 2 title here" 
           ]; 
    $('#next').click(function() { 
      $('.slidedeck').slidedeck().next({ 
     before: function(deck){ 
     // do nothing 
     }, 
     complete: function(deck){ 
      var slideNumber = deck.current != null ? deck.current + ' - ' : ''; 
      _gaq.push(['_trackEvent', 'slidedeck', 'viewed slides', slideTitles[slideNumber] + 'was viewed']); 
     } 
     }); 

}); 

しかし、私は、Googleアナリティクスでは、次のイベントラベルを取得: 'undefinedwasが見えます'。 (!私はjQueryのに新たなんだと):

complete: function(deck){ 
      var slideNumber = deck.current != null ? deck.current + ' - ' : ''; 

配列のタイトルに結合し、私は得ることはありません何

はからの応答がどのようにでしょうか?

deck.currentは、現在表示されているスライドの数値を与えるだけの、slidedeckプラグインからのAPI応答です。

申し訳ありません痛いです!

答えて

1

あなたは、配列のインデックスがスライド番号(明らかに)されている配列内のタイトルを置くことができる:なしスライド0がない場合

var slideTitles = [ "Slide 0 title here", 
        "Slide 1 title here", 
        "Slide 2 title here", 
        ... ]; 

(単なるプレースホルダとして空の文字列を入れているので、他のインデックス)

次に、slideNumberという既存のコードでは、対応するタイトルを取得するのにちょうどslideTitles[slideNumber]と言います。

+0

nnnnnnのお返事ありがとうございます:あなたは配列インデックスが(明らかに)スライド番号である配列にタイトルを付けることができます。これはslidedeck.jsが生成する配列インデックスにありますか?そのJSファイルを編集することはできません。 – JayDee

+0

この配列は独自のコード内で宣言することができます。たとえば、document.ready関数内ではなくclick関数の外側に配置することができます。つまり、一度(ページロードごとに)作成され、クリック機能内からアクセスできます。タイトルは、自分のスライドに付けるために提供しているタイトルです。 – nnnnnn

+0

私は結果が未定義になったので、何か間違っていると確信しています - ごめんなさい!元の投稿を編集して、使用しているコードを表示しています。上記の投稿と返信に時間をとっていただきありがとうございます。 – JayDee

関連する問題