HTML5テクニカルノート EaselJSのDisplayObject.tickイベント
説明Stage.update()メソッドが呼出されると、Stageオブジェクトはその表示リストのすべての階層の子オブジェクトにDisplayObject.tickイベントを送って、Canvasは描き替えられます。アニメーションするオブジェクトのフレームも、DisplayObject.tickイベントを受取って進められます。Stage.update()メソッドに引数を渡して呼出したとき、その値は配列に納められて、DisplayObject.tickイベントリスナーが受取るイベントオブジェクトのparamsプロパティに与えられます。 例以下のJavaScriptコードは、Stageオブジェクト(stage)の表示リストにContainerオブジェクト(parent)を子として加え、さらにその子にShapeオブジェクト(shape)を与えました(第1〜2行目)。そのうえで、ふたつのオブジェクトのDisplayObject.tickイベントに同じリスナー関数(test)を定めています(第3〜4行目)。 そして、Stage.update()メソッドを呼出すと、ふたつのオブジェクトのリスナー関数が順に呼出され、window.alert()メソッドにより警告ダイアログボックスが2回開きます(第7行目)。示される値は、つぎのとおりです。 [Shape (name=null)],0
警告ダイアログボックスの表示により、DisplayObject.tickイベントは、子インスタンス(Shapeオブジェクト)から先に送られていることがわかります。Stage.update()の引数に渡した値は、リスナー関数が引数に受取ったイベントオブジェクトのparamsプロパティから配列として得られました。その数値が加算されているのは、ふたつのリスナーに同じイベントオブジェクトが順に送られていることを示します。 作成者: 野中文雄 Copyright © 2001-2013 Fumio Nonaka. All rights reserved. |
|||||||||||||||||||||