- ベストアンサー
mc作成→jpg読み込み→リンクをつけたい
createEmptyMovieClipでMCを作成し、 そのMCに画像を読み込み、さらにリンクをつけたいのですが、 なぜかうまくいきません。 createEmptyMovieClip("mc", 1); mc.loadMovie("test.jpg"); mc.onRelease = function() { getURL("aaa.html", "_blank"); }; としても画像は読み込まれるのですが、 リンクがつきません。 いろいろとサンプルを見て作成してみたのですが、 画像を読み込ませるとリンクが消えてしまいます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
> 画像を読み込ませるとリンクが消えてしまいます。 そうです。正解です。 最初はその「リンクが消えてしまう」という現象が起こっていることがわからないので 解決策がわからずに沈没することが多いと思います。 しかし, 外部JPEGなどをロードしたとたんリンク(onReleaseなど)が消えるということさえわかれば,解決策は比較的簡単にわかると思います。 解決策はいくつかあると思いますが, 次の方法がその方法のうちの1つです。 ----------------------------------------------------- // まず親の mc を作りますよね createEmptyMovieClip("mc", 1); // そして作った親 mc の中にさらに子の mc を作ります mc.createEmptyMovieClip("mc", 0); // そして親 mc 内の子 mc に 「test.jpg」 をロードします mc.mc.loadMovie("test.jpg"); // 親の方の mc をクリックしたときの動作を定義します mc.onRelease = function() { getURL("aaa.html", "_blank"); }; ---------------------------------------------------- ※↑Flash MX 以上(FlashPlayer6以上)で使用可能なスクリプト ActionScript バージョン 1.0 また次の方法も解決策のうちの1つです。 ---------------------------------------------------- // とりあえず mc を作りますよね createEmptyMovieClip("mc", 1); // そして mcl という名の MovieClipLoader インスタンスを作成します mcl = new MovieClipLoader(); // またロードを監視するためのインスタンス obj も作成します obj = new Object(); // 外部JPEG がロードされたときに実行する関数を定義します obj.onLoadInit = function() { // ロード完了時に作った mc をクリックしたときの動作を定義します mc.onRelease = function() { getURL("aaa.html", "_blank"); }; }; // mcl のリスナーオブジェクトとして obj を登録します mcl.addListener(obj); // そして mc を表示ターゲットとして mcl に 「test.jpg」 をロードします mcl.loadClip("test.jpg", mc); ---------------------------------------------------- ※↑Flash MX 2004 以上(FlashPlayer7以上)で使用可能なスクリプト ActionScript バージョンは上と同じく ActionScript 1.0
お礼
ありがとうございました^^ やはりリンクは消えてしまってたのですね。 無事できました。