Plupload UploadProgress скорость
У меня есть это:
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. Я хочу, чтобы speedLog() вызывался каждые 5 секунд или около того, как мне этого добиться?
Спасибо SR Query. Я сделал это:
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/
1 ответ
Решение
Попробуйте это для плагина индикатора выполнения 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);}
}