2013-09-03 3 views
1

Je suis un peu confus à propos de l'utilisation de l'événement progress dans la v3.8 (en utilisant le wrapper jQuery) Je comprends que seuls certains navigateurs supportent l'interface ProgressEvent, donc je le teste dans Firefox v20.0.1.FineUploader Progressbar questions

En utilisant certains j'ai ajouté ce code d'un autre,:

.on('progress', function (id, filename, uploadedBytes, totalBytes)  
    {        
     alert('uploadedBytes: ' + uploadedBytes + '\n totalBytes: ' + totalBytes); 
     if (uploadedBytes < totalBytes) { 
      progress = '"' + fileName + '" uploading... ' + Math.round(uploadedBytes/totalBytes*100) +'%';                
       $('#qq-progress-bar').html(progress); 
     } 
     else { 
       $('#qq-progress-bar').html('saving'); 
     } 
    }) 

S'il vous plaît regarder la fonction d'alerte dans ce cas, au-dessus. Si les paramètres d'entrée de la méthode sont corrects, je ne devrais pas voir le nom du fichier téléchargé affiché dans le paramètre 'uploadedBytes'. Le paramètre totalBytes semble être correct. L'alerte est affiché ci-dessous:

enter image description here

Je peux visiblement voir la barre de progression dans certains navigateurs, tels que FireFox v20.0.1, mais la barre ne progresse pas. En outre, la valeur en% du montant téléchargé ne fait pas vraiment beaucoup. Je verrai une seule valeur, et alors ce sera complet.

Pour que tout cela apparaisse, je modifie la 'barre de progression qq' comme indiqué dans le modèle de fichier. Est-ce que je vais à propos de ce problème ou de rendre cela plus compliqué que nécessaire? Je dois juste montrer le progrès, et une valeur de texte n'est pas exigée mais est certainement gentille. Exemples? Pensées?

Merci!

Répondre

4

Votre signature de la méthode est incorrecte, vous devez inclure le paramètre event lors de l'utilisation du plugin jQuery:

.on('progress', function (event, id, filename, uploadedBytes, totalBytes) { 
    alert('uploadedBytes: ' + uploadedBytes + '\n totalBytes: ' + totalBytes); 
    if (uploadedBytes < totalBytes) { 
    progress = '"' + fileName + '" uploading... ' + Math.round(uploadedBytes/
     totalBytes * 100) + '%'; 
    $('#qq-progress-bar').html(progress); 
    } 
    else { 
    $('#qq-progress-bar').html('saving'); 
    } 
}) 

Plus d'informations est the documentation on using jQuery with Fine Uploader.