0

我正在使用 jQuery blueimp fileupload 并在 firefox/opera 中的函数progressprogressall. 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 个文件上测试的,它应该给出相同的输出。该问题也出现在多个文件上,它只是显示奇怪的总体百分比.....

4

2 回答 2

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) 或任何回声导致进度条问题...

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

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

这对其他人有用吗?

于 2015-02-18T18:59:34.350 回答
0

这解决了我的问题(它没有)根本没有意义,但它有效...... duhh改变这个:

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);
于 2013-09-23T23:41:07.937 回答