2012-01-27 21 views
2

私はボタン1という名前のムービークリップを持っていると、このムービークリップ に私はそれがで行われたクリックを認識dosen't理由を知りたいActionScript 3のevent.target

public function mouse_down(event:MouseEvent) 
     { 
     if(event.target==button1) 
     { 
     ...//this only recognizes when i click the button without intersecting the dynamic text area 
     } 
     if(event.target==button1||event.target==button1.txt) 
     { 
     ...//this works 
     } 

TXTという名前のダイナミックテキストがあります私はそれを指定しなければ動的なクリックを含む領域、なぜならtxtはbutton1の一部なので、通常はターゲットがbutton1かどうかを確認する必要がありますが、それはうまく動作しません。 button1.txt

ありがとうございました!

答えて

10

event.targetは、リスナーを追加したオブジェクトにネストされていても、イベントが発生したオブジェクトを常に指します。代わりにevent.currentTargetを使用してください。

詳しくは、this blog postをご覧ください。

+0

問題はbutton1が既にmain_menuという名前のムービークリップに配置されているため、現在のターゲットがmain_menuをターゲットとして認識することです – John

+3

button1に 'mouseChildren = false'を設定しても、フィールド。 – weltraumpirat