2011-07-01 55 views
2

Seems Plupload是一個很棒的工具。但我在這裏陷入了一個簡單的問題。我已經設置multipart = false(我不想以塊的形式發送數據),但是,我想顯示上傳的百分比。但是它沒有顯示%上傳,只顯示上傳結束時的100%。這是我的代碼。multipart = true和顯示上傳百分比之間的Plupload連接

 
$(function() { 
     var pluploader = new plupload.Uploader({ 
      runtimes : 'flash', //flash,gears,flash,silverlight,browserplus,html5 
      browse_button : 'img_video_upload', 
      container : 'video_upload_container', 
      max_file_size : '3gb', 
      //chunk_size : '100kb', 
      multipart : false, 
      multiple_queues : false, 
      multi_selection: false, 
      url : 'url('*/*/videoupload')?>', 
      flash_swf_url : '/public/js/plupload/js/plupload.flash.swf', 
      filters : [ 
       {title : "Video file", extensions : "flv"} 
      ] 
     }); 

     pluploader.init(); 

     pluploader.bind('FilesAdded', function(up, files) { 
      $('#panelWrapError').remove(); 
      pluploader.start(); //start file upload 
     }); 

     pluploader.bind('UploadProgress', function(up, file) { 
      $('#upload_progress').html('Progress: ' + file.name + ' ' + file.percent + '% Uploaded ' + "
"); }); pluploader.bind('FileUploaded', function(up, file, ret) { var response = eval('(' + ret.response + ')'); //hide upload progress div //$('#upload_progress').hide(); if(response.success){ $('#uploadresultwithtime').html('Your video was successfully uploaded. Please view preview.' + '
Video length: ' + response.duration + ' seconds' + '
Video size: ' + response.size + ' kb' ); } if(response.error){ $('#uploadresultwithtime').html(response.message); } }); pluploader.bind('Error', function(up, err) { $('#panelWrap').prepend('
  • ' + err.message +'
'); }); });
+0

奇怪!沒有人對我的問題感興趣? – rbncha

回答

0

您只將「flash」設置爲運行時。當使用Flash運行時而不使用分塊上傳時,Plupload無法知道上傳進度。

您必須接受使用閃光燈沒有進度指示並激活其它運行時(html5,齒輪等),它將在哪裏工作,或激活分塊上傳,使閃光燈能夠告訴它的總塊數量的塊數已上傳。

這意味着,如果你有一個1MB的文件上傳和CHUNK_SIZE設置爲100KB,那麼閃存將能夠表現出10,20,30 - (。每塊的步驟)100%

嘗試在plupload選項中設置以下內容以獲得最佳支持。

運行時間: 「齒輪,閃光,Silverlight的,的BrowserPlus,HTML5」, CHUNK_SIZE: '100KB'

記住,你的服務器需要支持接收分塊上傳。