| Name |
猫ちゃん |
| Date |
2008年05月30日 (金) 16時17分 |
| Message |
いつも楽しく拝見させて頂いてます。
早速ですが、質問です。
下記URLより、daniwellさんが作成したwebチラシのサンプル「chirashi_l2」をダウンロードさせて頂きました。
■ユニクロのようなwebチラシについて-その後
このchirashi_l2.swfを外部swfとして読み込ませたいのですが、うまく動作しません・・・
メインとなるswfに読み込み用mc「load_mc」を配置し、
onClipEvent(load)
{
this.loadMovie("chirashi_l2.swf");
}
と記述しましたが、何も表示されません。
試しにフレームアクション
_root.loadMovie("chirashi_l2.swf");
を記述したところ表示されました。
私の予想では階層の問題と思っているのですが、どこをいじればよいのかさっぱりわかりません・・・
ご教授頂けたら幸いと思います。
よろしくお願いします。 |
Response
01
|
| 2008年05月30日
(金) 22時04分> daniwell |
|
これは
外部swfを読み込む時によく陥る現象ですね。
まず解決法から先に提示しますが
以下のようにフレームに記述すれば解決できます。
("load_mc"というインスタンス名のMCに読み込む場合)
------------
load_mc._lockroot = true;
load_mc.loadMovie("chirashi_l2.swf");
------------
_lockroot というのは、「読み込まれたSWFの_rootの参照先を固定するもの」なんですが
まあ具体例があったほうがわかりやすいかと思うので、具体例で示します。
例えば、
読み込み元のswfを"親.swf"
読み込み先のswfを"子.swf"としたとき
"子.swf"側のスクリプトで、
_root.mc._x = 100;
というのがあったとしましょう。
本来なら、「"子.swf"中の mc という名前のMCのx座標が100になる」ハズですよね。
でも、外部読み込みで読み込んだ場合、
_root の指し示す先が、読み込み元である"親.swf"になってしまい、
実際に座標が移動するのは、「"親.swf"の_root上にある mc」という風になってしまうのです。
(当然、"親.swf"の_root上に mc がなければ何も起きません)
これを解消するために、
_root を読み込み先の "子.swf" のまま固定する、つまり
_lockroot = true としてやるワケです。
_root に読み込んだときにうまく動いたのは、
結局 _root に読み込んだら参照先は変わらないから、ですね。
あ、あと、私の作ったサンプルをお使いいただいてるようで恐縮です。
気に入っていただけましたら幸いです。
チラシのほうのスクリプトでも分からないことあれば聞いて下さい。
と言いたいところなんですが、自分でも8割くらい忘れてる感じなので
すぐに答えられるかはちょっとギモンですが^^
|
|
Response
02
|
|
Response
03
|
| 2008年05月31日
(土) 00時24分> joy
|
|
皆さん、
今晩は。
ぷーさんの紹介記事は、約1年前の私です。
こういう、基本的なことも知りませんでしたが、この1年、このサイトで、勉強し、まだまだですが、1年前に比べたら、Flashが分かってきたような気がします。
猫ちゃんさんも、継続すれば、直ぐに、分かるようになると思いますよ。
|
|
Response
04
|
| 2008年06月03日
(火) 09時44分> 猫ちゃん |
|
daniwellさんご回答ありがとうございます。
「_lockroot」を使用するのですね。
外部swfを読み込んでドロップダウンリスト表示した物を作ったときに使用した覚えがあります。
ただどの状態のときに使用するのかが理解できてなく、その時は「書いておけば動く」位の認識でした・・・
今回daniwellさんから丁寧に解説して頂いたので使用方法が明確になり、大変勉強になりました。
ありがごうございました。
チラシのscale配列仕様に感動しました!!
ぶーさんご紹介ありがとうございます。
ここのサイトは過去記事を見るだけでも本当に大変勉強になるサイトですね!
joyさんアドバイスありがとうございます。
まだまだ未熟な私ですが、joyさんのように色々な質問に私もResができるよう勉強に励みたいと思います。
今回は皆様ありがとうございました。
また機会があれば再度ご教授頂きたいと思います。
よろしくお願いします。
|
|