0

http://moederdagontbijtplacemat.nl/にアクセスすると、プログレス バーが表示されます。Loaderアプリケーションは、クラスを使用してサーバーからかなり大きな SWF をロードしています。奇妙なことに、プログレス バーはすぐに 100% になります (ただし、その後の読み込みにはまだ時間がかかります)。以下にコードを示しますが、基本的に単純すぎて解読できないことがわかります。

---アプリケーションが別のサーバー上にあったときに機能していたので、新しいサーバーが http ヘッダーで大きな SWF のサイズを送信していなかったのかもしれません。ただし、Firebug はプログレス バーを表示しますが、そうではなく、情報が利用可能である必要があります。

更新: 実際には正しくありません。実際、Apache は Content-Length ヘッダーを送信しません。それを調べるつもりです。:更新終了

また、ローダ swf をローカルで実行し、URL ( new URLRequest("Placemat.swf")) をサーバー上の Placemat.swf の絶対 URL に変更すると機能します。

        var l:Loader = new Loader();
        addChild(l);
        l.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, function(e:ProgressEvent) {
            s.setProgress(e.bytesLoaded/e.bytesTotal);
            trace(Math.round(100 * e.bytesLoaded/e.bytesTotal), "%");
        });
        l.contentLoaderInfo.addEventListener(Event.COMPLETE, function() {
            removeChild(s);
        });

        l.load(new URLRequest("Placemat.swf"));
4

2 に答える 2

0

Web サイトにアクセスしたときに、ローダー バーが正しく機能しました。

swf はブラウザのキャッシュにあるだけかもしれません。キャッシュをクリアしてみてください

于 2010-04-16T11:25:12.107 に答える
0

Apache が gzip 圧縮を行っていて、Content-Length ヘッダーを送信していなかった問題を修正しました。

.htaccess:

SetEnv no-gzip dont-vary
于 2010-04-16T11:57:44.113 に答える