- ベストアンサー
コンテンツの切り替えについて
- サイトのコンテンツを切り替える際の方法についてお聞かせください。
- 現在はスクリプトを使わずにコンテンツの流れを作っているが、更新がやりづらいとのことです。
- より更新しやすい方法でこのようなコンテンツの流れを作るにはどうすれば良いでしょうか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
こんばんはです。 「top_movie」が,あるSWFファイルのムービークリップ内にあるムービーなのか, 単独のSWFファイルとしてあるのか, 「profile」はサイト内の別HTMLにあるのか,同じムービー内にあるのか, 同じムービー内でも,top_movieの続きフレームにあるのか,別のムービークリップにあるのか, その辺のところがわからないと,ちゃんとしたスクリプトは書けませんが, 「top_movie」は1つのSWF内の20フレームある場合で,21フレームから「profile」が始まる場合は 「top_movie」の「profileへ」ボタンには次のようにスクリプトを書いておくと, 1フレームまで逆再生されたあと,「profile」フレームである21フレームに飛ぶというスクリプトになります。 ---------------------------------------- on (release) { this.onEnterFrame = function() { gotoAndStop(_currentframe-1); if (_currentframe == 1) { gotoAndPlay(21); this.onEnterFrame = null; } }; } ---------------------------------------- 「top_movie」は単独のSWFファイルで,「profile」が別のHTMLに飛ぶボタンの場合は, ---------------------------------------- on (release) { this.onEnterFrame = function() { gotoAndStop(_currentframe-1); if (_currentframe == 1) { getURL("http://www.goo.ne.jp/"); } }; } ---------------------------------------- のようになると思います。 上の分で説明しておくと, //ボタンがクリックされたとき on (release) { //1フレームレート毎(1/12秒)に1回{ }内を計算 this.onEnterFrame = function() { //今いるフレームより1つ前のフレームにgoto gotoAndStop(_currentframe-1); //もし今いるフレームが1に達したとき if (_currentframe == 1) { //21フレームに飛ぶ gotoAndPlay(21); //そして,この計算ループを終える this.onEnterFrame = null; } }; } という具合になります。 「ボタンをクリックしたけど,途中でキャンセル」 とか 「逆再生している間に他のボタンを押された場合」 とか,いわゆるエラー処理は全く考慮していません。
お礼
前者の方に関しての質問でした。説明不足で申し訳ございません。良くわかりました。回答ありがとうございます。