我试图阻止淡入/缩小我的影片剪辑。
我将解释:我已将我的swf集成到带有下拉列表的HTML页面中。当我从这个列表中选择一个项目时,它会调用一个javascript函数。该函数对我的swf文件中的函数执行回调,该函数淡入/淡出在运行时绘制的图像(取决于在下拉列表中选择的项目)。当我选择另一个元素时,我希望previuos项目停止淡出,新的开始。
这是我的褪色功能:
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()
,但这也不起作用。
我还尝试设置一个执行淡入淡出5次的变量计数,除非我在函数完成之前更改drowpdown列表中的项目,否则这项工作。
任何想法?希望很清楚!
由于
答案 0 :(得分:1)
如果有人关心我用Tween类解决了!!所有这些功能都被一行代码所取代:
function fadeTo(clipName, fadeValue){
new mx.transitions.Tween(eval(clipName), "_alpha", mx.transitions.easing.Regular.easeOut, eval(clipName)._alpha, fadeValue, 1, true);
}