jQuery插件WebUploader实现文件上传_jquery

最近在项目中用到了百度的文件图片上传插件WebUploader,分享给大家。

WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件。在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+。两套运行时,同样的调用方式,可供用户任意选用。 采用大文件分片并发上传,极大的提高了文件上传效率。

需要在http://fex.baidu.com/webuploader/download.html点击打开链接下载WebUploader

 // 初始化Web Uploader***上传图片
var uploader = WebUploader.create({
 // 选完文件后,是否自动上传。
 auto: true,
 // 文件接收服务端地址,自动生成缩略图需要后端完成。
 server: '/common/uploadFile?imageZip=1',
 // 选择文件的按钮。可选。
 // 内部根据当前运行是创建,可能是input元素,也可能是flash.
 pick: '#sendimg',
 fileNumLimit: 5,
 //allowMagnify: false,
 // 只允许选择图片文件。
 accept:{
 title: 'Images',
 extensions: 'gif,jpg,jpeg,bmp,png',
 mimeTypes: 'image/*'
 }
});
// 当有文件添加进来的时候
 uploader.on( 'fileQueued', function( file ) {
 var $li = $(
  '<div style="float:right" id="' + file.id + '" class="delimg">' +
   '<img class="addimg"><div class="closeimg">×</div>' +
  '</div>'
  ),
 $img = $li.find('img'); 

 // $list为容器jQuery实例
 $("#piccon").append( $li );
 // 创建缩略图
 // 如果为非图片文件,可以不用调用此方法。
 // thumbnailWidth x thumbnailHeight 为 100 x 100
 uploader.makeThumb( file, function( error, src ) {
  if ( error ) {
  $img.replaceWith('<span>不能预览</span>');
  return;
  } 

  $img.attr( 'src', src );
 }, 100, 100 );
 $li.on('click', function() {
  $(this).remove();
 })
 });
 // 文件上传过程中创建进度条实时显示。
 uploader.on( 'uploadProgress', function( file, percentage ) {
  var $li = $( '#'+file.id ),
  $percent = $li.find('.progress span'); 

  // 避免重复创建
  if ( !$percent.length ) {
  $percent = $('<p class="progress"><span></span></p>')
   .appendTo( $li )
   .find('span');
  } 

  $percent.css( 'width', percentage * 100 + '%' );
 }); 

 // 文件上传成功,给item添加成功class, 用样式标记上传成功。
 uploader.on( 'uploadSuccess', function( file,response ) {
  imgurl=response.fileName;//这里可以拿到后台返回的图片名称
  //alert(imgurl);
  $( '#'+file.id ).addClass('upload-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();
 });

更多精彩内容,请点击《jQuery上传操作汇总》,进行深入学习和研究。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索webuploader文件上传
上传插件ssi uploader、jquery 图片上传插件、jquery文件上传插件、jquery 上传插件、jquery上传预览插件,以便于您获取更多的相关知识。

时间: 2024-10-18 10:35:10

jQuery插件WebUploader实现文件上传_jquery的相关文章

jquery插件ajaxupload实现文件上传操作_jquery

本文实例讲述了jquery插件ajaxupload实现文件上传操作代码.分享给大家供大家参考.具体如下: 运行效果截图如下: 图1 文件上传前 图2 文件上传后 具体代码如下: 1.创建页面并编写HTML 上传文档:  <div class="uploadFile"> <span id="doc"><input type="text" disabled="disabled" /></s

Jquery结合HTML5实现文件上传_jquery

1.利用Jquery使用HTML5的FormData属性实现对文件的上传 在HTML5以前我们如果需要实现文件上传服务器等功能的时候,有时候我们不得不依赖于FLASH去实现,而在HTML5到来之后,我们很容易的实现对文件的上传,只需要利用HTML5的一个FormData属性,结合Jquery就很容易实现文件的上传,而且读取文件的上传进度,下面这个上传案例就是基于上面所说的实现的,下面我将所所有的JS和CSS以及HTML页面代码放在下面. 注意事项:FormData属性必须依赖于HTML5,所以如

jQuery不使用插件及swf实现无刷新文件上传_jquery

文件上传是网站常用的功能,例如附件或图片的上传功能,解决方案也有很多,我们今天介绍一种通过jQuery无刷新的文件上传方式. 首先,我们在页面中放一个form,用来上传文件: 复制代码 代码如下: <form id="myForm" method="post" action="/asyncFileUpload/UploadHandler.ashx"     enctype="multipart/form-data" ta

基于WebUploader的文件上传js插件_javascript技巧

首先把地址甩出来,http://fex-team.github.io/webuploader/  里面有比较完整的demo案例文档,本文主要是基于文件上传和图片上传增加了大量的注释,基本保证了每行代码都有注释以助于理解,是对官网demo的增强版,希望可以帮助大家更好的理解该插件 首先是文件上传 jQuery(function() { var $ = jQuery, $list = $('#thelist'), $btn = $('#ctlBtn'), state = 'pending', upl

JQuery插件ajaxfileupload.js异步上传文件实例

这篇文章主要介绍了JQuery插件ajaxfileupload.js异步上传文件实例,本文直接给出了HTML代码和JS代码以及后台处理代码,需要的朋友可以参考下     在服务器端做文件上传的过程中,如果使用web服务器短端的上传控件去上传文件的话,会导致页面刷新一次,这样对用户的体验就不是很友好了.ajaxfileupload.js是一款jQuery的异步上传文件插件,使用简单且容易上手. 前置条件:ajaxfileupload.js文件,百度下载一个就行. JS引用:  代码如下: <scr

jquery文件下载插件以及hadoop文件上传的小问题

问题描述 jquery文件下载插件以及hadoop文件上传的小问题 求一个文件下载插件介绍,和上传插件类似,可以显示进度,暂停等,求大神,求告知!万分感谢: 附:学校实训项目做了一个云存储相关的,文件利用上传插件上传到tomcat项目目录里,再上传到hadoop hdfs,然后删除,中间转了一道,求好的解决办法. 解决方案 http://download.csdn.net/detail/li575563191/7342725 解决方案二: http://blog.karachicorner.co

jQuery+ajax简单实现文件上传的方法_jquery

本文实例讲述了jQuery+ajax简单实现文件上传的方法.分享给大家供大家参考,具体如下: 可以通过ajax来提交表单,而不会刷新页面.主要使用的方法是 $("#formID").ajaxSubmit()方法. 1.要引入js插件 需要下载的附件:jquery.form.js 2.页面代码: <script src="project/js/jquery.form.js" type="text/javascript"></scr

利用jQuery插件imgAreaSelect实现图片上传裁剪(同步显示图像位置信息)_jquery

  <body> <div class="container demo"> <div class="big"> <p class="instructions">大图预览</p> <div class="bigframe"> <img width="300" height="300" src="imag

js及jquery实现动态的文件上传操作按钮的添加和删除

 本文为大家介绍下使用js及jquery实现动态的文件上传操作按钮的添加和删除,具体示例如下,希望对大家有所帮助 javascript实现  代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  <html xmlns="http://w