2008/03/15

 event.targetとcurrentTarget

[ AIR ]

FxUGの方に質問をさせていただいたのだけど、きっかけはLabelをボタンとして使うコードを書いてた時に、MouseEvent.CLICKイベントハンドラ内で、Labelのxy座標が取れないという現象に悩まされてたのだ。

で、イベントハンドラ内でevent.targetじゃなくて、event.currentTargetを使えば良いというアドバイスをいただいたのだけど、自分はいままで、event.currentTargetの存在を全く認識してなかった...(汗)

詳細は、Tipsに書いたので、ご覧いただきたいのだけど、これ、知ってか知らずかわからないけど、世の中のサンプルソースを見ても、結構用法を間違っているような気がする。多くの場合は、event.target == event.currentTargetなので、event.targetを使って問題無いのだろうけどね。

で、event.targetとevent.currentTargetをうまく用いれば、複数のコンポーネントのイベントをまとめて処理できるので、メモリの節約と実行速度の向上が期待できるそうだ。早速自分のコードを見直してみよう(笑)。