• 07 «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • » 09
ASOK?
ActionScriptでFlashつくるよ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
page top

「capture」「bubbling」に関しては日本語の資料が少ない…。

子から親を「bubbling」、親から子を「capture」と言うらしい。
MouseEventは子から親へと伝播する。つまりbubbling。
addEventListenerの引数「useCapture」をtrueに設定することで、「capture」にできる(?)

useCapture:Boolean (default = false) ― リスナーが、キャプチャ段階、またはターゲットおよびバブリング段階で動作するかどうかを判断します。useCapture を true に設定すると、リスナーはキャプチャ段階のみでイベントを処理し、ターゲット段階またはバブリング段階では処理しません。useCapture を false に設定すると、リスナーはターゲット段階またはバブリング段階のみでイベントを処理します。3 つの段階すべてでイベントを受け取るには、addEventListener を 2 回呼び出します。useCapture を true に設定して 1 度呼び出し、useCapture を false に設定してもう一度呼び出します。

EventDispatcher.addEventListener()メソッド

イベント処理段階(?)として、ターゲット段階、キャプチャ段階、バブリング段階があるみたいだ。

btnAがクリックされると、イベントオブジェクトはイベントフローをステージからイベントターゲットに向けて下がっていきます。これをキャプチャ段階と言います。

イベントターゲットであるbtnAに到達した段階をターゲット段階と言います。

イベントオブジェクトは最後にステージに向かって浮上(バブリング)します。これをバブリング段階と言います。

8-1-1.イベントモデルの概要とイベントフロー

キャプチャ段階⇒ターゲット段階⇒バブリング段階と推移するんだと。
useCaptureはどの段階で処理するかを指定するのか。

イベントがどの段階で呼ばれているのか調べるには、eventPhase プロパティを使用します。 フェーズの一覧です。

途中で処理を中断できる!

イベントは、「キャプチャ → ターゲット → パブリック」と順番に実行されますが、この流れを途中で終了したい場合は、 stopImmediatePropagation() メソッドか stopPropagation() メソッドを使用します。

 

stopImmediatePropagation() メソッドは直ちに中断したい場合に使用します。
stopPropagation() メソッドは現在のノードの処理が終わってから中断したい場合に使用します。

FlashゲームPG講座 For AS3.0【EventDispatcher クラスについて】

関連記事
page top

コメント

管理者にだけ表示を許可する
 

トラックバック
TB*URL
Copyright © 2005 ASOK?. all rights reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。