Resumable.js
Library for providing multiple uploads via the HTML5 File API
...This is done by splitting each file into small chunks. Then, whenever the upload of a chunk fails, uploading is retried until the procedure completes. This allows uploads to automatically resume uploading after a network connection is lost either locally or to the server. Additionally, it allows for users to pause, resume and even recover uploads without losing state because only the currently uploading chunks will be aborted, not the entire upload. Resumable.js does not have any external dependencies other than the HTML5 File API. ...