我有这个:
var uploader = $('#plupload').pluploadQueue();
uploader.bind('UploadProgress', function(up, file)
{
speedLog(uploader);
});
function speedLog(uploader) {
var speed = uploader.total.bytesPerSec;
console.log(speed);
};而且它是有效的,我可以在firebug中看到输出,但它是大量的,我的意图是通过ajax提交“速度”。我希望每隔5秒左右就调用一次speedLog(),该如何实现呢?
感谢SR查询。我这样做了:
window.setInterval(
function speedLog(uploader) {
var uploader = $('#plupload').pluploadQueue();
var speed = uploader.total.bytesPerSec;
if(speed > 0)
{
console.log(speed);
} else {
clearInterval(ib);
}
}, 5000);看起来不错:http://imageshack.us/photo/my-images/221/speedt.png/
发布于 2012-02-04 19:43:21
在jquery进度条插件中尝试使用此插件。你不喜欢插件,用另一种方式试试这个逻辑。
var ib;
var timer_speed = 200; // 1000 = 1 second
function progressBar_completeHandler(event, ui) {
// what you want to do after completing the progress. do it here
}
$(function() {
$("#progressbar").progressbar({value:0, complete:progressBar_completeHandler});
});
function start_timer(){
val = $("#progressbar").progressbar("option", "value");
ib=setInterval("increment_bar()",timer_speed);
}
function increment_bar() {
$('#progressbar' ).progressbar( 'option', 'value', val+=1);
if(val > 99){clearInterval(ib);}
}https://stackoverflow.com/questions/9138876
复制相似问题