2009-08-23 18 views
4

Je suis en train de créer une barre de progression de téléchargement de fichier. Actuellement, j'ai un formulaire de téléchargement qui renvoie le montant actuel des données téléchargées. Donc, il commence à zéro, et retourne la taille actuelle en bits, mais j'ai converti cela en octets.Calculer le pourcentage de la barre de progression

Si je peux obtenir la taille totale du fichier avant de télécharger, et que je peux obtenir le montant actuel téléchargé, et comment le renvoyer de manière dynamique, comment puis-je calculer une valeur de 1-100%?

J'utilise le plugin jquery SWFUpload: http://blogs.bigfish.tv/adam/2009/06/14/swfupload-jquery-plugin

+0

La barre de progression peut-elle avoir son réglage maximum? Si c'est le cas, vous pouvez simplement définir la taille maximale de la barre en octets, et la progression actuelle est le nombre d'octets transférés. La plupart des barres de progression le permettent. –

+0

Oui, je peux définir un max. Mais, parce que ces valeurs sont en octets ou bits, je ne suis pas sûr de savoir comment traduire cela en quelque chose qui pourrait effectivement être utile pour une valeur de barre de progression. Par exemple. valeur de largeur css. –

Répondre

1

= 100 Pourcentages téléchargé/taille du fichier * octets téléchargés

pensez à utiliser les mêmes unités pour les deux tailles.

Cordialement

3

que votre largeur maximale CSS pour la barre de progression (DIV?) Est 770px. Appelez ce PROGRESS_MAX.

Si la taille du fichier en octets est FILE_SIZE, et le nombre d'octets téléchargés est UPLOADED_BYTES alors la valeur actuelle de progression (largeur en px) est UPLOADED_BYTES/FILE_SIZE * PROGRESS_MAX

Espérons que ce que vous cherchez pour.

+0

Comprendre totalement. Je vous remercie! –