Jquery file upload断点续传功能

Jquery file upload断点续传功能

主要实现文件暂停、恢复上传功能
  • 以下是个人截取的一段,主要实现的是断点续传功能
function uploaderFile(id) {
    var maxFileSize = 1024 * 1024 * 1024 * 10; // 1G
    $('#' + id).fileupload({
        dataType: 'json',
        minFileSize: 5,
        dropZone: $(this),
        replaceFileInput: true,
        url: "/file/uploadFile",//文件的后台接受地址
        autoUpload: true,
        maxChunkSize: 1024 * 2 * 1024,// 2m
        sequentialUploads: true,
        add: function (e, data) {
            jqXHR = data.submit();
            // 点击暂停按钮暂停上传
            $("#stop").click(function () { 
                if (curId === data.jqXHR.uploadId) {
                    data.jqXHR.abort();
                    // 点击开始按钮开始上传
                    $("#begin").click(function () {
                        //设置文件上传进度
                        data.uploadedBytes = data._progress.loaded;
                        //文件进行恢复上传
                        $.blueimp.fileupload.prototype.options.add.call(e.target, e, data)
                    });
                }

            });
        }
    })

}

主要恢复上传代码:

//设置文件上传进度
data.uploadedBytes = data._progress.loaded;
//文件进行恢复上传  
$.blueimp.fileupload.prototype.options.add.call(e.target, e, data)

e.target值如下:
在这里插入图片描述
官方文档:

地址https://github.com/blueimp/jQuery-File-Upload/wiki/Chunked-file-uploads#resuming-file-uploads

$('#fileupload').fileupload({
    maxChunkSize: 10000000, // 10 MB
    add: function (e, data) {
        var that = this;
        $.getJSON('server/php/', {file: data.files[0].name}, function (result) {
            var file = result.file;
            data.uploadedBytes = file && file.size;
            $.blueimp.fileupload.prototype
                .options.add.call(that, e, data);
        });
    }
});

注意:如果使用的form表单形式可以使用官方文档this这种方式,由于我是不是使用的form表单形式,所以使用的是e.target获取
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值