用法Web Uploader实现多文件上传_.docx

上传人:啊飒飒 文档编号:11548182 上传时间:2021-08-23 格式:DOCX 页数:8 大小:14.08KB
返回 下载 相关 举报
用法Web Uploader实现多文件上传_.docx_第1页
第1页 / 共8页
用法Web Uploader实现多文件上传_.docx_第2页
第2页 / 共8页
用法Web Uploader实现多文件上传_.docx_第3页
第3页 / 共8页
用法Web Uploader实现多文件上传_.docx_第4页
第4页 / 共8页
用法Web Uploader实现多文件上传_.docx_第5页
第5页 / 共8页
亲,该文档总共8页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用法Web Uploader实现多文件上传_.docx》由会员分享,可在线阅读,更多相关《用法Web Uploader实现多文件上传_.docx(8页珍藏版)》请在三一文库上搜索。

1、用法Web Uploader实现多文件上传_ 这篇文章主要介绍了用法Web Uploader实现多文件上传的相关资料,特别不错具有参考借鉴价值,需要的伴侣可以参考下 引入资源 用法Web Uploader文件上传需要引入三种资源:JS, CSS, SWF。 !-引入CSS- link rel=stylesheet type=text/css href=webuploader文件夹/webuploader.css !-引入JS- script type=text/javascript src=webuploader文件夹/webuploader.js /script !-SWF在初始化的时候指定

2、,在后面将展现- 文件上传 WebUploader只包含文件上传的底层实现,不包括UI部分。所以交互方面可以自由发挥,以下将演示如何去实现一个简洁的版本。 请点击下面的选择文件按钮,然后点击开头上传体验此Demo。 Html部分 首先预备dom结构,包含存放文件信息的容器、选择按钮和上传按钮三个部分。 div id=uploader class=wu-example !-用来存放文件信息- div id=thelist class=uploader-list /div div class=btns div id=picker选择文件/div button id=ctlBtn class=btn

3、 btn-default开头上传/button /div /div 初始化Web Uploader 具体说明,请看一下代码中的说明部分。 var uploader = WebUploader.create( / swf文件路径 swf: BASE_URL + /js/Uploader.swf, / 文件接收服务端。 server: http:/ / 选择文件的按钮。 可选。 / 内部依据当前运行是创建,可能是input元素,也可能是flash. pick: #picker, / 不压缩image, 默认假如是jpeg,文件上传前会压缩一把再上传! resize: false ); 显示用户选择

4、 由于webuploader不处理UI规律,所以需要去监听fileQueued大事来实现。 / 当有文件被添加进队列的时候 uploader.on( fileQueued, function( file ) $list.append( div id= + file.id + class=item + h4 class=info + file.name + /h4 + p class=state等待上传./p + /div ); ); 文件上传进度 文件上传中,Web Uploader会对外派送uploadProgress大事,其中包含文件对象和该文件当前上传进度。 / 文件上传过程中创建进度条

5、实时显示。 uploader.on( uploadProgress, function( file, percentage ) var $li = $( #+file.id ), $percent = $li.find(.progress .progress-bar); / 避开重复创建 if ( !$percent.length ) $percent = $(div class=progress progress-striped active + div class=progress-bar role=progressbar style=width: 0% + /div + /div).ap

6、pendTo( $li ).find(.progress-bar); $li.find(p.state).text(上传中); $percent.css( width, percentage * 100 + % ); ); 文件胜利、失败处理 文件上传失败会派送uploadError大事,胜利则派送uploadSuccess大事。不管胜利或者失败,在文件上传完后都会触发uploadComplete大事。 uploader.on( uploadSuccess, function( file ) $( #+file.id ).find(p.state).text(已上传); ); uploader

7、.on( uploadError, function( file ) $( #+file.id ).find(p.state).text(上传出错); ); uploader.on( uploadComplete, function( file ) $( #+file.id ).find(.progress).fadeOut(); ); 图片上传 与一般文件上传相比,此demo演示了:文件过滤,图片预览,图片压缩上传等功能。 Html 要实现如上demo,首先需要预备一个按钮,和一个用来存放添加的文件信息列表的容器。 !-dom结构部分- div id=uploader-demo !-用来存放

8、item- div id=fileList class=uploader-list /div div id=filePicker选择图片/div /div Javascript 创建Web Uploader实例 / 初始化Web Uploader var uploader = WebUploader.create( / 选完文件后,是否自动上传。 auto: true, / swf文件路径 swf: BASE_URL + /js/Uploader.swf, / 文件接收服务端。 server: http:/ / 选择文件的按钮。 可选。 / 内部依据当前运行是创建,可能是input元素,也可能

9、是flash. pick: #filePicker, / 只允许选择图片文件。 accept: title: Images, extensions: gif,jpg,jpeg,bmp,png, mimeTypes: image/* ); 监听fileQueued大事,通过uploader.makeThumb来创建图片预览图。 PS: 这里得到的是Data URL数据,IE6、IE7不支持挺直预览。可以借助FLASH或者服务端来完成预览。 / 当有文件添加进来的时候 uploader.on( fileQueued, function( file ) var $li = $( div id= +

10、file.id + class=file-item thumbnail + img + div class=info + file.name + /div + /div ), $img = $li.find(img); / $list为容器jQuery实例 $list.append( $li ); / 创建缩略图 / 假如为非图片文件,可以不用调用此方法。 / thumbnailWidth x thumbnailHeight 为 100 x 100 uploader.makeThumb( file, function( error, src ) if ( error ) $img.replac

11、eWith(span不能预览/span); return; $img.attr( src, src ); , thumbnailWidth, thumbnailHeight ); ); 然后剩下的就是上传状态提示了,当文件上传过程中, 上传胜利,上传失败,上传完成都分别对应uploadProgress,uploadSuccess, uploadError, uploadComplete大事。 / 文件上传过程中创建进度条实时显示。 uploader.on( uploadProgress, function( file, percentage ) var $li = $( #+file.id )

12、, $percent = $li.find(.progress span); / 避开重复创建 if ( !$percent.length ) $percent = $(p class=progressspan/span/p) .appendTo( $li ) .find(span); $percent.css( width, percentage * 100 + % ); ); / 文件上传胜利,给item添加胜利class, 用样式标记上传胜利。 uploader.on( uploadSuccess, function( file ) $( #+file.id ).addClass(upl

13、oad-state-done); ); / 文件上传失败,显示上传出错。 uploader.on( uploadError, function( file ) var $li = $( #+file.id ), $error = $li.find(div.error); / 避开重复创建 if ( !$error.length ) $error = $(div class=error/div).appendTo( $li ); $error.text(上传失败); ); / 完成上传完了,胜利或者失败,先删除进度条。 uploader.on( uploadComplete, function( file ) $( #+file.id ).find(.progress).remove(); ); 以上所述是我给大家介绍的用法Web Uploader实现多文件上传的相关学问,盼望对大家有所关心 .

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1