2016-11-12 1 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. (링크 이름)이 작동하지 않습니다.

상태가 아니라 배열에있는 무비 클립을 확인하여이 작업을 수행 할 수있었습니다.

case navContainer.dayOneBtn: 
     console.log("add day 1"); 
     break; 

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

    case navContainer.dayThreeBtn: 
     console.log("add day 3"); 
     break; 
} 
+0

'lib' 란 무엇입니까? [mvce] (http://stackoverflow.com/help/mcve) – Damon

+0

lib는 Adobe Animate CC의 라이브러리에 대한 참조입니다. – icekomo

+0

연계 이름 만 시도 하시겠습니까? –

답변

0

이 당신이 .name을 재산 (연계 이름)에 전환 할 수있는 동영상 클립 인 경우 : 여기에 업데이트 된 코드입니다. 생성시 각 MC에 하나씩 할당하십시오.

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; 
    } 
} 
관련 문제