• 締切済み

Flash Lite 1.1(KDDI)で日数カウントダウン

Flash Lite1.1を搭載したW21SAまたはW22SAで、 http://oshiete1.goo.ne.jp/kotaeru.php3?qid=1192628 にある、#2さんのスクリプトが使いたいのです。 ですが、そのままFlashLite1.1に変換すると、シンタックスチェックで山ほどエラーが出てきます。 どうにか動作させたいのですが.... どうしたらよいでしょうか?

みんなの回答

  • DPE
  • ベストアンサー率85% (666/776)
回答No.1

その質問に回答した者です。 ご紹介したスクリプトは、Flash Player 6 以降でないと動きません。 ( No.1192628 の質問文にある http://okweb.jp/kotaeru.php3?q=863385 の#2のスクリプトは、Flash Player 5 でも動きます) Flash Lite は Flash Player 4 をベースに設計されています。 Flash Player 5 からはターゲットパスの書き方が変更されましたので、Flash Player 6 向けのスクリプトを Flash Lite 向けにパブリッシュすると、シンタックスエラーになったり、サポートされていないスクリプトを使っているとのエラーが出るのは当然です。 結論から申しますと、残念ながら、そのスクリプトを Flash Lite で動かすのは無理だと思います。 日数のカウントダウンには、イベント日までの時間を取得する方法が必要です。 先の作例では、これを Date クラスの各メソッドを使って計算していますが、Date クラスは Flash Player 5 以降でなければ使えません。 ざっと見たところ、Flash Lite には Date クラスの代用になりそうな関数やアクションがありませんでした。 ですが、Flash Lite でも、loadVariables で外部から変数を読み込むことはできます。 日数カウントダウンは要するに、どんな方法でも、イベント日までの時間を取得できればいいのです。 これを計算するCGIを作り、loadVariables でCGIが計算した変数を読み込んで表示するのであれば、Flash Lite でも可能かもしれません。 ただ、loadVariables を enterFrame イベント内で実行するとフレームレート分の1秒ごとに通信が行われてしまいますし、電波等の関係により通信が遅れるなどのトラブルも考えられます。 通信にかかる費用や速度の面から見ても、秒単位のカウントダウンは携帯電話向けのコンテンツとしては現実的ではないと思います。 あえて作るとするなら、変数の読み込みが最初の1度だけでいい日にちのカウントダウンくらいまでが、無難ではないでしょうか。 いずれにせよ、ActionScript で時刻を扱えない以上、Flash Lite だけでは無理でしょう。 au 向けのコンテンツは作ったことがないので詳しくは言えませんが、ご参考までに。

関連するQ&A