2016-11-06 70 views
1

我使用這個代碼的動畫網站我設計的聯繫頁面上的按鈕把按鈕前鼠標。AS3超過

//Contact Buttons 
//Email 
ContactPage.Email.addEventListener(MouseEvent.MOUSE_OVER,bounceEmailover); 

function bounceEmailover(event:MouseEvent):void 
{ 
    var scaleTween:Tween=new Tween(event.target,"scaleX",Elastic.easeOut,1,1.5,1,true); 
    var scale2Tween:Tween=new Tween(event.target,"scaleY",Elastic.easeOut,1,1.5,1,true); 
} 

ContactPage.Email.addEventListener(MouseEvent.MOUSE_OUT,bounceEmailout); 

function bounceEmailout(event:MouseEvent):void 
{ 
    var scaleTween:Tween=new Tween(event.target,"scaleX",Elastic.easeOut,1.5,1,1,true); 
    var scale2Tween:Tween=new Tween(event.target,"scaleY",Elastic.easeOut,1.5,1,1,true); 
} 

有4個按鈕跨越,我想反彈並過度重疊,當我鼠標在頁面一字排開相同的代碼。有沒有辦法將我挖過的按鈕放到前面,而不是留在旁邊的按鈕後面?

Here's an image of the buttons。 Wordpress按鈕已被隱藏起來,但它保留在Facebook按鈕後面。

回答

1

只是得到該按鈕的一個實例,然後從容器列表中刪除,然後重新添加它到列表

function bounceEmailover(event:MouseEvent):void 
{ 
    var scaleTween:Tween=new Tween(event.target,"scaleX",Elastic.easeOut,1,1.5,1,true); 
    var scale2Tween:Tween=new Tween(event.target,"scaleY",Elastic.easeOut,1,1.5,1,true); 

    var parent:MovieClip = event.target.parent as MovieClip; 
    var btn:MovieClip = event.target as MovieClip; 
    parent.addChild(btn); 
} 

編輯的頂部:感謝@NealDavis,從上面取出parent.addChild(btn);爲:

removeChild之是不需要在這裏。 Callig的addChild一個 對象是已經存在將不會創建第二個實例, 但只有已裝箱實例移動到z次序的頂部

確保getChildByNameremoveChildaddChild從右稱爲將

+0

哪裏實際上把這個?對不起,我是新來的。 – user7083681

+0

必須將此代碼複製到bounceEmailover中。 –

+3

不需要調用removeChild。 –

1

由於所有的按鈕都嵌入的聯繫頁面影片剪輯中,我能加入這個代碼,只是聯繫人頁面,當我鼠標帶來的是影片剪輯中的任何按鈕,將前面。工作正常。

for (var fl_ChildIndex:int = 0; 
     fl_ChildIndex < this.numChildren; 
     fl_ChildIndex++) 
{ 
    this.getChildAt(fl_ChildIndex).addEventListener(MouseEvent.MOUSE_OVER, fContactMObringtofront); 
} 
function fContactMObringtofront(event:MouseEvent):void 
{ 
    this.addChild(event.currentTarget as DisplayObject); 
}