2016-11-12 4 views
0

私はAdobe Animateをプロジェクトに使用していますが、イベントリスナーがアタッチされたムービークリップの配列があります。私はどのムービークリップがクリックされたかを知り、それに応じて対応する方法を見つけようとしています。私はe.currentTargetをにconsole.logとき、私は、ライブラリからムービークリップのリンケージを見ることができますmouseEventにcurrentTargetを使用しようとしています

function navigationControls(e){ 

console.log(e) 

switch(e.currentTarget){ 
    case lib.dayOneBtn: 
     console.log("add day 1"); 
     break; 

    case lib.dayTwoBtn: 
     console.log("add day 2"); 
     break; 

    case "lib.dayThreeBtn": 
     console.log("add day 3"); 
     break; 
} 
} 

//--> console log {type: "click", target: a, currentTarget: lib.dayOneBtn, eventPhase: 3, bubbles: true…}

が、私はよく分からない:私のリスナー関数は次のようになりますswitchステートメントで使用するプロパティ。 lib。(リンケージ名)が機能していません。

私はこの状態でムービークリップをチェックし、配列では確認できませんでした。

+0

'lib'とは何ですか? [mvce](http://stackoverflow.com/help/mcve) – Damon

+0

libはAdobe Animate CCのライブラリのリファレンスです。 – icekomo

+0

リンク名のみを試してみませんか? –

答えて

0

これらがムービークリップの場合は、.nameプロパティ(リンク名)をオンにできます。作成時に各MCに1つずつ割り当ててください:

dayOneButton = new DayMC(); 
dayOneButton.name = "dayOne"; 

dayTwoButton = new DayMC(); 
dayTwoButton.name = "dayTwo"; 

function navigationControls(e:Event) 
{ 
    var clickedMC:MovieClip = e.currentTarget as MovieClip; 

    switch(clickedMC.name) 
    { 
     case "dayOne": 
      // do stuff 
      break; 
    } 
} 
関連する問題