
Webデザインには、あなたの知らない「落とし穴」がたくさん。大きなものから小さなものまで、それが及ぼす影響はさまざまだ。カンペキだと思っているあなたのサイトも、実はすでに暗い穴の中かも・・・。
 |
外部swfファイルを読み込む際の落とし穴
|

|
Flashで外部swfファイルを読み込むとき、その外部swf自身にアクションスプリプトを記述する場合はターゲットパスに注意しよう。よく参考書に載っているローディングスクリプト【1】などは通常単独では正常に作動するが、外部ファイルとして読み込んだ場合、ファイルサイズなど自身の情報を取得できないためスクリプトが機能しないことがある。
これは、読み込む元となるスタートアップムービーの中に配置されたムービークリップと見なされるため、自身を参照するには“this”【2】または“_root.外部ファイルを読み込むMCのインスタンス名”【3】となるからである。また外部読み込みの場合、読み込みの基準となる中心点は左上角となり、さらに背景色、フレームレートなどにもスタートアップムービーの設定が反映されるので、意図通りに読み込まれない恐れがあるため注意したい。
| |
total = _root.getBytesTotal();
loaded = _root.getBytesLoaded();
|
【1】一般的に参考書などに載っているスクリプト例
|
total = this.getBytesTotal();
loaded = this.getBytesLoaded();
|
【2】自身を参照するthisを使用した場合。通常こちらを推奨
|
total = _root.gaibu.getBytesTotal();
total = _root.gaibu.getBytesLoaded();
|
【3】スタートアップムービー上のインスタンス名gaibuというMCに読み込む場合のターゲットパス
解説:横山 剛
(※本文中、及びキャプション内で使用している「<」、「>」は、全角になります。ご注意ください。)