2009.02.18
割と初歩的なことなのですが、Flash内に別のSWFを読み込むことについてです。
今までは、単純に loadMovie() を使っていたんですが、これだと親のFlashからアクセスするときにうまくいかない場合があります。(たとえば、子SWFの中にある変数を読みに行くとか。)
理由は単に、子SWFの読み込みが終わる前にアクセスしてしまうからなのですが。
今回は読み込みが終わった直後に指示を出す必要があったので、スクリプトを見直してみました。
// SWFを読み込むためのローダーを作る
var Loader = new MovieClipLoader ();
Loader.loadClip("hoge.swf", MC);
// 読み込み状況を監視するためのオブジェクトを作る
var load_obj = new Object ();
// 読み込み処理時の処理
load_obj.onLoadInit = function(){
// スクリプト
// スクリプト
}
// Loaderに登録
Loader.addListener( load_obj );
こんな感じにして、読み込みが終わったときに function を実行させることができました。
今までは、単純に loadMovie() を使っていたんですが、これだと親のFlashからアクセスするときにうまくいかない場合があります。(たとえば、子SWFの中にある変数を読みに行くとか。)
理由は単に、子SWFの読み込みが終わる前にアクセスしてしまうからなのですが。
今回は読み込みが終わった直後に指示を出す必要があったので、スクリプトを見直してみました。
// SWFを読み込むためのローダーを作る
var Loader = new MovieClipLoader ();
Loader.loadClip("hoge.swf", MC);
// 読み込み状況を監視するためのオブジェクトを作る
var load_obj = new Object ();
// 読み込み処理時の処理
load_obj.onLoadInit = function(){
// スクリプト
// スクリプト
}
// Loaderに登録
Loader.addListener( load_obj );
こんな感じにして、読み込みが終わったときに function を実行させることができました。
Flash