0

swfupload を使用してファイルをアップロードするための残り時間を取得することは可能ですか?

4

2 に答える 2

1

残り時間を確実に見積もることができますが、これは私の知る限りSWFUploadに組み込まれている機能ではありません。これが私がすることです:

ファイルのuploadStart()ハンドラーで、アップロードの開始時刻を記録し、どこかに保存します。

var startTime = +new Date(); // the current date time in UTC * 1000 milliseconds

次に、同じファイルのuploadProgress()ハンドラーで次のようにします。

var percentage = bytesLoaded/file.size,
    timeDiff = +new Date() - startTime,
    status = (percentage > 0 ? Math.round(timeDiff / percentage / 1000 * (1 - percentage)) + " seconds remaining." : "Uploading...");

うまくいきます!

これがお役に立てば幸いです。

編集、パーセンテージ>0のテストを追加

于 2010-09-11T19:56:26.440 に答える
0

いいえ、通常のインターネット接続を介して何かをアップロードするのにかかる時間は、速度の変動により事前に知ることはできません. 一方、swfupload は、アップロードされたパーセンテージを報告する進行ハンドラーを提供するため、それを使用して進行カウンター/バーを表示するか、既に費やされた時間に基づいて残り時間を推測し、それがある程度正確であることを願っています。

于 2010-07-30T06:33:27.900 に答える