2013-07-17 8 views
1

동영상 클립의 페이드 인/아웃을 중지하려고합니다.movieclip에서 멈추는 동작을 멈추십시오. 2

설명해 드리겠습니다 : HTML 페이지에 내 swf를 드롭 다운 목록과 통합했습니다. 이 함수는 호출 된 자바 스크립트 함수를이 목록에서 선택합니다.이 함수는 런타임에 (드롭 다운 목록에서 선택한 항목에 따라) 그려진 이미지를 페이드 인/아웃하는 swf 파일의 함수에 대한 콜백을 실행합니다. 다른 요소를 선택하면 항목이 사라지고 새로운 항목이 시작됩니다.

이 내 페이딩 기능입니다 :

function fadeIn(h){ 
if (eval(h)._alpha<100) { 
    eval(h)._alpha += 20; 
} 
else { 
    clearInterval(fadeInterval); 
    setTimeout(startOut, 500, h); 
} 
} 

function fadeOut(h) { 
if (eval(h)._alpha>0) { 
    eval(h)._alpha -= 20; 
} else { 
    clearInterval(fadeInterval); 
    setTimeout(startIn, 100, h); 
} 
} 

function startOut(h) { 
fadeInterval = setInterval(fadeOut, 1, h); 
} 

function startIn(h){ 
fadeInterval = setInterval(fadeIn, 1, h); 
} 

function flashing(h){ 
var bname; 
bname = "planGroup.singleObject." + h; 
eval(bname)._alpha = 0; 
fadeInterval = setInterval(fadeIn, 1, bname); 
} 

내가 clearInterval(fadeInterval)로했지만,이 항상 작동하지 않습니다 my_mc.stop()으로 시도했지만이 중 하나가 작동하지 않습니다.

나는 함수가 완료되기 전에 drowpdown 목록의 항목을 변경하지 않으면 페이딩 olny를 5 번 실행하는 변수 개수를 설정하려고 시도했다.

어떤 아이디어 ?? 희망이었습니다.

고마워요

답변

1

나는 Tween 클래스로 해결할 사람이 있다면 !! 모든 기능은 한 줄의 코드로 대체되었습니다.

function fadeTo(clipName, fadeValue){ 
    new mx.transitions.Tween(eval(clipName), "_alpha", mx.transitions.easing.Regular.easeOut, eval(clipName)._alpha, fadeValue, 1, true); 
}