jQuery blueimp fileupload firefox / opera计算问题,chrome也行

问题描述 投票:0回答:2

我正在使用jQuery blueimp fileupload并在函数progressprogressall中使用firefox / opera中的不同输出。 Chrome工作正常,console.log()中的输出是

100
100 

而FF / Opera中的输出是:

100
95

输出正确的值:

progress: function(e, data) {
  var value;
  value = Math.round((data.loaded / data.total) * 100) || 0;

  console.log(value);
},

输出奇怪的值:

progressall: function(e, data) {
  var value;
  value = Math.round((data.loaded / data.total) * 100) || 0;

  console.log(value);
},

顺便说一句。这是在1个文件上测试的,它应该给出相同的输出。问题也发生在多个文件上它只显示奇怪的整体百分比.....

jquery jquery-file-upload blueimp
2个回答
0
投票

这解决了我的问题(它没有)有意义,但它的工作原理......呃改变这个:

loaded = parseInt(
      e.loaded / e.total * (data.chunkSize || total),
      10
) + (data.uploadedBytes || 0);

loaded = parseInt(
       e.loaded / e.loaded * (data.chunkSize || total),
       10
) + (data.uploadedBytes || 0);

0
投票

有同样的问题,找到了原因。

这是jquery_file_upload\server\php\index.php:的内容

error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$upload_handler = new UploadHandler();

使用此服务器端上传脚本 - >进度条没有问题,它达到100%。

问题出现在以下代码中:

error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$upload_handler = new UploadHandler();
$var="111";
print_r($var);

print_r($ var)或任何echo都会导致进度条问题...

所以解决方案是:没有“回声”。

error_reporting(E_ALL | E_STRICT);
require('UploadHandler.php');
$upload_handler = new UploadHandler();
return;

这对其他人有用吗?

© www.soinside.com 2019 - 2024. All rights reserved.