Flash

ボタンのロールオーバー、ロールアウト、クリックの設定。

2010.01.15 / Notes

ボタンオブジェクトに対して、ロールオーバー、ロールアウト、クリックをまとめて設定するスクリプトです。
ロールオーバー、ロールアウト、クリックのイベントリスナーごと、関数内に記述して、内包しているリスナーの関数を実行しています。リスナーの関数は一つだけ書いて、イベントタイプの文字列で振り分けるようにしています。

イベントリスナーで引数を渡す方法。

2010.01.13 / Notes

マウスのクリック時などのイベントリスナーで、追加の引数を渡す方法です。
通常イベントリスナーから呼び出すリスナーの関数には引数を渡すことができませんが、次の方法で任意に渡すことができます。

イベントリスナーから呼び出す関数の戻り値に、イベントオブジェクトを引数とする関数を返すことで、引数を受け取ることが可能になります。
上記のスクリプトでは無名関数にしているので少し読みづらいですが、書き換えると次のようになります。

ActionScriptで配列のシャッフル。

2010.01.12 / Notes

配列の順番をランダムにソートしてシャッフルを行うスクリプトです。

ウィンドウ内をスクロールするフィールド。

2010.01.11 / Labs

縦横に複数のページを持つフィールドを、ウィンドウ内でスクロールします。グリッド状に縦横にページを作成して、方向キーの操作でページをスクロールします。
サンプルはこちら
(方向キーを有効にするには、一度FLASHエリアをクリックして、フォーカスを当てる必要があります)

ブラウザ上でActionSctiptの簡易デバッグ。

2010.01.07 / Labs

ブラウザでFLASHを再生中、デバッグのためにパラメータなどを出力する方法です。
ActionScriptを制作中によく利用するtraceですが、ブラウザで再生中には実行することができません。そこでJavaScriptとの連携を利用して同様のことを実現します。
はじめにHTML内にJavaScriptで、引数を受け取りダイアログで表示するスクリプトを記述します。関数名は「flashTrace」としておきます。

次にActionScriptでは、JavaScriptの関数を実行するたスクリプトを記述します。引数の一つ目がJavaScriptの関数名で、二つ目が出力したいパラメータです。

これでブラウザで再生中に、ダイアログでActionScript内のパラメータを出力することができます。
ですが、このままだとFLASHで制作中のときには、traceも併記する必要が出てしまいます。その場合、下記のようにブラウザで再生かどうかを判定して、どちらか実行する関数にしておくと便利です。

ちなみにサーバへのアクセス(http://)ではなく、ブラウザで直接HTMLファイルを開いた場合(file://)には、FLASHのセキュリティでJavaScriptが実行されません。外部サーバではなくローカルで実行するには、Webサーバをローカル環境に構築する必要があります。