トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     日付で画像を変更する
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
komainu
Åê¹ÆNo.3033
投稿日時: 2004-1-20 20:53
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
日付で画像を変更する
こんばんわ。
少し前のスレッドでも同じような話題がありましたが、詰まっているところが、
違うところですので、別件で質問させていただきます。

題名のように、日付で画像を変更するフラッシュを作っています。
で、1フレーム目から4フレーム目までにムービークリップを貼り付けて、
1フレーム目のムービークリップに以下のActionScriptを組み込みました。
onClipEvent (load) {
	DD = new Date();
	day = DD.getDate();      //ここで日付取得
	if (day == 20) {
		_root.gotoAndPlay (2);//20日なら2フレーム目にジャンプ
	} else if (day == 21) {
		_root.gotoAndPlay (3);//21日なら3フレーム目にジャンプ
	} else if (day == 22) {
		_root.gotoAndPlay (4);//22日なら4フレーム目にジャンプ
	} else {
		_root.gotoAndPlay (1);//それ以外なら1フレーム目のまま
	}
}


で、別レイヤを作成して、1フレーム目から4フレーム目までに
stop();

を入れました。

デバッガ上では正常に動作していたので、サーバーにあげてPCの日付を20日にして
表示させると、2フレーム目が一瞬表示され、3フレーム目が必ず表示されます。
おかしいと思い、いろいろしているうちに、巻き戻しを選択すると正常に動作しました。

なぜデバッガ上で正常に表示されているのに、サーバーに上げた途端に正常に
動作しないのでしょうか?
野中文雄
Åê¹ÆNo.3034
投稿日時: 2004-1-20 21:09
ちょんまげら
居住地: 東京
投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1)
Re: 日付で画像を変更する
MovieClip.gotoAndPlay()メソッドは、アクセルです。第2フレームにブレーキのstop()アクションが設定してあっても、アクセルを踏込んでいれば、つぎのフレームに侵入してしまう危険性はあります。なぜ、そのようなスクリプティングをされているのでしょうか?
引用:
komainuさんは書きました:
1フレーム目のムービークリップに以下のActionScriptを組み込みました。
onClipEvent (load) {
	DD = new Date();
	day = DD.getDate();      //ここで日付取得
	if (day == 20) {
		_root.gotoAndPlay (2);//20日なら2フレーム目にジャンプ
	} else if (day == 21) {
		_root.gotoAndPlay (3);//21日なら3フレーム目にジャンプ
	} else if (day == 22) {
		_root.gotoAndPlay (4);//22日なら4フレーム目にジャンプ
	} else {
		_root.gotoAndPlay (1);//それ以外なら1フレーム目のまま
	}
}

で、別レイヤを作成して、1フレーム目から4フレーム目までに
stop();

を入れました。

デバッガ上では正常に動作していたので、サーバーにあげてPCの日付を20日にして
表示させると、2フレーム目が一瞬表示され、3フレーム目が必ず表示されます。


----------------
 

komainu
Åê¹ÆNo.3035
投稿日時: 2004-1-20 21:37
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
Re: 日付で画像を変更する
ご返答ありがとうごございます。


引用:

Fumioさんは書きました:
MovieClip.gotoAndPlay()メソッドは、アクセルです。第2フレームにブレーキのstop()アクションが設定してあっても、アクセルを踏込んでいれば、つぎのフレームに侵入してしまう危険性はあります。なぜ、そのようなスクリプティングをされているのでしょうか?


おっしゃるとおりですね。
gotoAndStopに変更してみました。

…でも結果は同じなんです

アクションスクリプトは1フレーム目のムービークリップと別レイヤの
stop();
だけなんですが、原因は他のところにあるのでしょうか?
うすあじ
Åê¹ÆNo.3036
投稿日時: 2004-1-20 22:28
職人
居住地: 東京都杉並区
投稿: 211
使用環境:
FlashCS5.5 ,MacOSX 10.6.8
Re: 日付で画像を変更する
こんにちは、うすあじです。

こちらでやってみたら、動きますけど・・・
http://www.hspcenter.com/flash/test/test2.html
(上の数字は日付、下はフレーム数)

うちにはMXしかないので、バージョンによるものかもしれませんが。

とりあえず、問題の切り分けをしたほうが良いでしょう。

ローカルで動いてサーバーで動かない、という場合、
(1)更新したと思っているが、キャッシュに残ったswfファイルを参照している。
(2)ムービー自体の読み込みに時間がかかるためにうまく動作しない。
等が考えられます。

ひょっとしてムービーのサイズが大きくないですか?
リロードすればうまく動きませんか?
そのヘンが怪しそうですね。
ある程度のサイズのムービーなら、ロード待ちの処理を入れれば解決しそうです。

引用:
おかしいと思い、いろいろしているうちに、巻き戻しを選択すると正常に動作しました。


----------------
うすあじ(twitter)
うすあじFlash研究所
HSPセンター

komainu
Åê¹ÆNo.3037
投稿日時: 2004-1-20 23:24
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
Re: 日付で画像を変更する
ご返信ありがとうございます。
引用:

(1)更新したと思っているが、キャッシュに残ったswfファイルを参照している。

これは念のためにファイル名を変えているので問題ないと思います。
引用:

(2)ムービー自体の読み込みに時間がかかるためにうまく動作しない。

表示される時は一瞬なので、1つ120KB×13でも問題ないと思っていたのですが…
引用:

ある程度のサイズのムービーなら、ロード待ちの処理を入れれば解決しそうです。

そうですね、一度ローディング画面を入れてみます。
ありがとうございました。
komainu
Åê¹ÆNo.3043
投稿日時: 2004-1-21 10:58
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
Re: 日付で画像を変更する
ローディング画面を入れることで動作しましたのでご報告いたします。

ありがとうございました。

うすあじ
Åê¹ÆNo.3045
投稿日時: 2004-1-21 13:01
職人
居住地: 東京都杉並区
投稿: 211
使用環境:
FlashCS5.5 ,MacOSX 10.6.8
Re: 日付で画像を変更する
を。良かったです。
ではでは。


----------------
うすあじ(twitter)
うすあじFlash研究所
HSPセンター

komainu
Åê¹ÆNo.3076
投稿日時: 2004-1-23 13:38
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
Re: 日付で画像を変更する
お世話になっております。
どこに書こうかと思ったんですが、日付で画像を変更するスクリプトの改良版ですので、
こちらに書かせていただきます。

日付を取得して画像を変更することは皆さんのおかげで無事できましたので、
今度は、ローカルのPCではなく、サーバーの時間を取得して画像を表示できる
ようにしたいと思いましたが、アクションスクリプトのコマンド一覧を見ていても、
そのような表記がないので巣が何とかできないかと考えています。

これってFlashだけでできるものなのでしょうか?
rin-ko
Åê¹ÆNo.3079
投稿日時: 2004-1-23 15:46
職人
居住地: 東京
投稿: 397
使用環境:
MacOSX10.5/10.4
WinXP SP3
MX2004Pro/CS3
Re: 日付で画像を変更する
komainuさん、こんにちは。
私もFlash5ユーザーですけど、Flash「だけ」では無理だと思います。
というのも、実際にアクションスクリプトを処理しているのは、そのFlashを再生しているローカルのPCだからです。
もしサーバーの時間を表示したいならば、サーバーからFlashを通してローカルPCに「いまは何年何月何日何時…」というデータを送ってもらわなくちゃならないですよね。すると、サーバーとやりとりする手段が必要になっちゃいます。
アクションスクリプトにも、サーバーとデータをやりとりするためのコマンドはあるので、CGI等との連携が可能ならば、サーバーから時刻を取得することもできる筈ですよ。
komainu
Åê¹ÆNo.3084
投稿日時: 2004-1-23 17:24
新米
居住地: 大阪
投稿: 14
使用環境:
WinXp、FlashMX2004
Re: 日付で画像を変更する
こんにちは。

ご返事ありがとうございます。

引用:

私もFlash5ユーザーですけど、Flash「だけ」では無理だと思います。

そうなんですか…

引用:

アクションスクリプトにも、サーバーとデータをやりとりするためのコマンドはあるので、CGI等との連携が可能ならば、サーバーから時刻を取得することもできる筈ですよ。

この意味が良く分からないのですが… (汗
アクションスクリプトでサーバーとのデータのやり取りができるなら、
Flash内でそのデータを参照して、時刻を取得できるような気がするのですが…
すいませんがどういう意味なのか教えて頂けませんか?

お手数ですがよろしくお願い致します。

(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops