%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
<!DOCTYPE html> <meta charset=utf-8> <title>Process Events for FileReader</title> <link rel=help href="http://dev.w3.org/2006/webapi/FileAPI/#event-handler-attributes-section"> <link rel=author title="Jinks Zhao" href="mailto:jinks@maxthon.com"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> Please choose one file through this input below.<br> <input type="file" id="filer"> <div id="log"></div> <script> var input, reader, progressEventCounter, progressEventTimeList, lastProgressEventTime; setup(function() { input = document.getElementById('filer'); reader = new FileReader(); progressEventCounter = 0; progressEventTimeList = []; lastProgressEventTime; }, { explicit_timeout: true }); var t = async_test("FileReader progress events.") reader.onprogress = t.step_func(function () { var newTime = new Date; var timeout = newTime - lastProgressEventTime; progressEventTimeList.push(timeout); lastProgressEventTime = newTime; progressEventCounter++; assert_less_than_equal(timeout, 50, "The progress event should be fired every 50ms."); }); reader.onload = t.step_func_done(function () { assert_greater_than_equal(progressEventCounter, 1, "When read completely, the progress event must be fired at least once.") }); input.onchange = t.step_func(function () { var files = input.files; assert_greater_than(files.length, 0); var file = files[0]; lastProgressEventTime = new Date; reader.readAsArrayBuffer(file); }); </script>