FLASHファイルのタイムライン制御の質問です。flashのタイムラインを何かHTML上のスクリプトで制御することはできるでしょうか?

例えば、あるひとつのフラッシュファイルがあるとします。そのフラッシュファイルは5章の映像からできていて、ファイルサイズの関係で、バラバラのファイルにすることはできません。それに対するhtmlファイルが5つあって、例えば、01.htmlにアクセスした時には、flashファイルの第一章が流れ、03.htmlにアクセスした時には同じフラッシュファイルだけれど、3章から流したいのです。
こんなことってできるでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2005/10/28 19:28:03
  • 終了:--

回答(2件)

id:o0o0o0o0o No.1

o0o0o0o0o回答回数84ベストアンサー獲得回数02005/10/28 23:29:32

ポイント25pt

http://www.macromedia.com/jp/support/flash/ts/documents/fl0284.h...

Macromedia - Flash TechNote : fl0284 - FlashVars を使用して SWF へ変数を渡す

可能です。

たとえば、

03.htmlのPARAM、EMBEDの両方のタグに


Object タグの例:

<PARAM NAME=FlashVars VALUE=”page=3”>


Embed タグの例:

<EMBED src=”display.swf”

FlashVars=”page=3” ... (ほかのパラメータ)> </EMBED>


と記述します。


FLASHの各章に、ch1、ch2、ch3、などのフレーム名をつけ

第一章の前のフレームに

以下のように、アクションを記述します。


if (page==2){

gotoAndPlay(”ch2”);

} else if(page==3){

gotoAndPlay(”ch3”);

}


これで、一つのswfを使いまわして

各章にジャンプさせることが出来ます。

id:soyuz11 No.2

soyuz11回答回数22ベストアンサー獲得回数12005/10/29 14:58:13

ポイント25pt

http://www.macromedia.com/jp/support/flash/ts/documents/fl0017.h...

Macromedia - Flash TechNote : fl0017 - JavaScript でムービーを制御する

macromediaのサイトにjavascriptからFlashを操作する方法について書かれた資料がありました。

しかしこの方法だとLiveConnect非対応ブラウザではウンともスーともいわないのでオススメできません。


確実なのは、Flash側に変数を渡して処理する方法です。

htmlでswfを埋め込む部分、

(A)

<objectタグでは、<param name=movie value=”sample.swf?mode=1”>

<embedタグは <embed src=”sample.swf?mode=1”

という形でFlashにパラメータを渡す形で呼び出し、

上記の例ではFlash側では_root.mode=1と解釈されるので


(B)

今度はFlash側の2フレーム目に(1フレーム目はプリローダと仮定)


if(mode==1){

gotoAndPlay(”シーン名”,”該当シーンの指定フレームかラベル”);

}

※シーン名はアルファベットからの単語構成文字でないと反応しません。


という形で記述し、swfを書き出します。


呼び出したいシーン毎に(A)でパラメータを振りわければ

ご希望の挙動になるのでは?と思います。

id:ikuyy

ありがとうございます!

ぜひ試してみます!!!

2005/10/29 15:29:19

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません