我正在使用下面的代码来更改滚动和滚动按钮的颜色,并单击。我有以下问题,在这个1。颜色没有改变时,按钮被点击。2.点击一次后按钮就不能工作了。
pages.gotoAndStop("home");
// list of button instance names
var previousClicked:DisplayObject;
var buttonsss:Array = [home, menudown.about, menudown.portfolio, menudown.clients, menudown.pricing, menudown.contact];
for each ( var mc:MovieClip in buttonsss)
{
mc.buttonMode = true;
mc.mouseChildren = false;
mc.addEventListener(MouseEvent.MOUSE_UP, onClick);
mc.addEventListener(MouseEvent.ROLL_OVER, rolloverEffect);
mc.addEventListener(MouseEvent.ROLL_OUT, rolloutEffect);
}
function onClick(e:MouseEvent):void
{
pages.gotoAndStop(e.target.name);
e.currentTarget.mouseEnabled = false;
TweenLite.to(e.currentTarget,2,{tint:0x666666, ease:Strong.easeOut});
TweenLite.to(previousClicked,2,{tint:null , ease:Strong.easeOut});// set the previous clicked to null tint
previousClicked.addEventListener(MouseEvent.ROLL_OUT, rolloutEffect);// restore the Roll_Over effect
previousClicked = DisplayObject(e.target); // update the last clicked button
e.target.removeEventListener(MouseEvent.ROLL_OUT, rolloutEffect);
}
function rolloverEffect(e:MouseEvent):void{
TweenLite.to(e.currentTarget,2,{tint:0x666666, ease:Strong.easeOut});
}
function rolloutEffect(e:MouseEvent):void{
//should change tint to null just when its enabled, but its changing always (enabled or disabled)
TweenLite.to(e.currentTarget,2,{tint:null , ease:Strong.easeOut});
}发布于 2013-09-28 23:51:21
我一直是用内置按钮来完成这个任务,而不是使用代码。如果单击顶部栏中的“窗口”,然后单击“组件”(靠近底部),则会弹出一个小窗口,然后展开“用户界面”文件夹并从按钮项中拖放。然后在舞台上用那个按钮,如果你双击它,你会进入编辑符号屏幕,它会有按钮的每一个状态的图片,如果你双击你想要的状态,你就可以直观地编辑那个按钮的版本。
希望这能帮上忙。
注意:我首先从flash CS5.5开始,您的标签上写着flash-cs5,我不确定该函数是否在5中可用。
发布于 2013-09-29 15:12:07
我不熟悉Tweenlite,但我猜想它在这种情况下所做的只是改变颜色,对吗?如果是这样的话,我建议在时间线上创建颜色变化,并使用框架标记与gotoAndStop相结合来创建不同的效果。这也可以解决你在点击一次按钮后不工作的问题。
https://stackoverflow.com/questions/19071914
复制相似问题