我使用ActionScript 2.0脚本在Flash上制作内容。我有一个名为剪辑的影片剪辑。在里面我有另一个名为 starters 的电影剪辑。在初学者中,我有三个不同的按钮,其中都有一个悬停图层。 我想要那些按钮做什么:当我将鼠标悬停在每个按钮上以使其他按钮 visible = false 时,我想要它们。然后当我徘徊回到正常状态时。
按钮名为btn1,btn2,btn3。
提前谢谢!
答案 0 :(得分:1)
我担心我对Actionscript 2不熟悉。但是,通过一些研究,我能够破译那种奇怪的语言并想出这个。
将其放入包含clip
的图层中的操作面板中。我们今天不会在对象上放置任何代码!
clip.starters.btn1.onRollOver = hideButtons
clip.starters.btn2.onRollOver = hideButtons
clip.starters.btn3.onRollOver = hideButtons
//set the onRollOver function of each button to function hideButtons()
clip.starters.btn1.onRollOut = showButtons
clip.starters.btn2.onRollOut = showButtons
clip.starters.btn3.onRollOut = showButtons
//set the onRollOut function of each button to function showButtons()
function hideButtons() {
//repeat the action for all items in "starter"
for (var Item in clip.starters) {
//make all items invisible
clip.starters[Item]._visible = false
}
//make the caller of hideButtons() visible
this._visible = true
}
function showButtons() {
//repeat the action for all items in "starter"
for (var Item in clip.starters) {
//make everything visible
clip.starters[Item]._visible = true
}
}
希望对你有用。如果您需要我的建议,请学习Actionscript 3.0!它使用得更广泛,代码更清晰。
祝你好运!答案 1 :(得分:1)
试试这个(动作2):
var Bt:Array = [_root.clip.starters.btn1, _root.clip.starters.btn2, _root.clip.starters.btn3];
for(i=0; i<Bt.length; i++){
Bt[i].iv = i;
Bt[i].onRollOver = function(){
for( i=0; i<Bt.length; i++ ){ Bt[i]._visible = false; }
Bt[this.iv]._visible = true;
};
Bt[i].onRollOut = function(){
for( i=0; i<Bt.length; i++ ){ Bt[i]._visible = true; }
};
};
动画:
import mx.transitions.Tween;
import mx.transitions.easing.*;
var Bt:Array = [_root.clip.starters.btn1, _root.clip.starters.btn2, _root.clip.starters.btn3];
for(i=0;i<Bt.length;i++){
Bt[i].iv = i;
Bt[i].onRollOver=function(){
for(i=0;i<Bt.length;i++){
if(i != this.iv){
new Tween(Bt[i], "_alpha", Strong.easeOut, 100, 0, 15, false);
new Tween(Bt[i], "_x", Back.easeOut, Bt[i]._x, (Bt[i]._x-10), 1, true);
}
}
};
Bt[i].onRollOut=function(){
for(i=0;i<Bt.length;i++){
if(Bt[i]._alpha ==0){
new Tween(Bt[i], "_alpha", Strong.easeOut, 0, 100, 15, false);
new Tween(Bt[i], "_x", Back.easeOut, Bt[i]._x, (Bt[i]._x+10), 1, true);
}
}
};
};