0

コンテンツ領域内に収まるようにスケーリングされた 1 つの画像を読み込んで表示する小さなフラッシュ ファイルがあります。これらを javascript ギャラリーで使用するため、1 つの html ページ (swfObject に埋め込まれた) に複数のインスタンスがあります。

サーバーを更新しましたが、私が知る限り、変更された関連するものだけがキャッシュ関連です。以前は、すべてのイメージと swfs が常に再ロードされていました。これで、キャッシュからロードする必要があります。

私はfirebugから、swfが実際にjpgをロードしていることを確認できますが、何も表示されません。これは、多くのブラウザ/OS/フラッシュ プラグインの組み合わせで発生します。一部の画像が表示される場合もあれば、表示されない場合もあります。

moviecliploader イベント ハンドラ (onloadinit、onloaderror) 内のコードは実行されません。

これを機能させる方法についてのアイデアをいただければ幸いです。

4

3 に答える 3

0

私は解決策を見つけました。

問題はキャッシュと関係がありますが、MovieClipLoaderとは関係がないことがわかりました。

ロードされた画像をStage.widthとStage.heightに基づいてスケーリングしていました。私が見つけたのは、フラッシュが短期間で幅と高さを0にすることがあるということでした。これは、ステージ上に何かが表示されている場合でも発生する可能性があります。以前は、画像が読み込まれると寸法が正しくなったため、これは問題ではありませんでした。これで、画像がキャッシュから取得された場合、サイズが0になることがあります。

解決策は、onEnterFrameハンドラーでステージのディメンションを確認し、ディメンションが0より大きい場合にのみロードを続行することでした。

于 2009-01-20T14:05:13.390 に答える
0

メインフラッシュが1灯も使えない。イメージごとに個別のフラッシュ ローダーが必要です。私の知る限り、1 から N 個のフラッシュ ローダーを処理するキュー システムを作成することはできません。

多くのテストを行った結果、フラッシュのロード時にフレーム 1 のアクションがまったく実行されないことが判明したため、これは MovieClipLoader のバグではないようです。最初のフレームにステージ上に青い線を引く簡単なコードを追加しましたが、読み込みに失敗すると線がまったく表示されません。

于 2009-01-20T07:39:23.107 に答える
0

過去に、MovieClipLoader の複数のインスタンスを使用するときに問題が発生しました。あなたと同様に、一部のローダーがタイムアウトしたようで、ロードするはずの画像が表示されませんでした。これは、おそらく一度に 2 つのダウンロードという HTTP 同時スレッドの制限によるものだと言われました (しかし、それについての確認は得られませんでした)。

これは、すべてをロードする 1 つのメイン フラッシュではなく、ページで複数の swf ファイルを使用している場合に特に当てはまります。

最大 2 つの movieClipLoader が同時にロードされる単純なキュー システムをフラッシュで作成することで、これを解決しました。1 つが完了すると、次のダウンロードがトリガーされ、すべてのダウンロードが処理されるまで続きます。それは非常にうまくいきました。

于 2009-01-20T06:33:04.880 に答える