php+apc を使用してアップロードの進行状況バーを実装し、IE7_PHP チュートリアルでそれが表示されない問題を解決する方法

WBOY
リリース: 2016-07-21 15:11:57
オリジナル
783 人が閲覧しました

今日は以前書いたファイルのアップロードとプログレスバーの表示に関するプログラムコードを整理し、最適化してコードを整理しました。悩まされていた問題が解決されました。進行状況バーが 100% に達せず、ブラウザが一時停止したように見えることがあります。 IE8とChromeでのテストは完璧です。

プロジェクト要件:

APK をアップロードし、アップロードの進行状況バーを表示します。アップロードが完了すると、APK が分析され、「APK データを分析中です。お待​​ちください...」と表示されます。分析が完了すると、「アップロードに成功しました」と表示されます。もう一度アップロードします

私のコンピューターには英語版の winxp がインストールされているため、デフォルトの IE は IE7 です。テスト中に、プログレス バーが表示されないことがわかりました。パーセンテージも表示されません。

トラブルシューティング:

1. DOMを表示せずにjqueryモードに変更します

2. 再帰呼び出しに遅延を追加し、表示しません。遅延コードを追加します: setTimeout("getProgress('"+upid+"')",500);

3. コンテナレベルの問題が原因ですか?そこで、アップロード期間モジュールを実行するかどうかをテストします。ページにコンテナを追加し、グローバル変数 i を書き込み、アップロード中に呼び出されるモジュール内のコンテナ i++ に書き込むだけで、正しい呼び出しが表示されて示されます

4. プログレスバーとパーセンテージが両方とも0と表示されるようになりましたが、受信したjsonデータに問題がありますか?

返されたコードは echo json_encode($arr); なので、それ自体は json データですが、理由を調べるために、返されたデータを 1 回実行します: var dataObj=eval("("+data+")" ); // json オブジェクトに変換します

スクリプトエラーを表示します。

5. キャッシュですか?

コードをコピー コードは次のとおりです:

$.getJSON("ProgressBar.php",{progress_key:upid},function(result){

to:
コードをコピー コードは次のとおりです:

$.getJSON("ProcessBar.php",{progress_key:upid,time:(new Date()).getTime()},function(result){

Perfectly問題を解決します。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/326784.html技術記事今日は以前書いたファイルのアップロードとプログレスバーの表示に関するプログラムコードを整理し、コードの最適化と整理をしていきます。私を悩ませていた問題を解決しました: プログレスバーが 100 に到達しないことがあります...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!