jQuery上传插件webupload使用方法


Posted in jQuery onAugust 01, 2017

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

这个插件很好用,功能也比较强大,比ajaxfileupload要强大,可去官方网站下载。

目前项目中只用到了图片批量上传功能,官方示例已经写的很详细了,下面介绍下如何把官方示例迁移到自己的项目中:

// 实例化
 uploader = WebUploader.create({
  pick: {
  id: '#filePicker',
  label: '点击选择图片'
  },
  formData: {
  uid: 123
  },
  dnd: '#dndArea',
  paste: '#uploader',
  swf: '../../dist/Uploader.swf',
  chunked: false,
  chunkSize: 512 * 1024,
  server: '../../server/fileupload.php',
  // runtimeOrder: 'flash',

  // accept: {
  // title: 'Images',
  // extensions: 'gif,jpg,jpeg,bmp,png',
  // mimeTypes: 'image/*'
  // },

  // 禁掉全局的拖拽功能。这样不会出现图片拖进页面的时候,把图片打开。
  disableGlobalDnd: true,
  fileNumLimit: 300,
  fileSizeLimit: 200 * 1024 * 1024, // 200 M
  fileSingleSizeLimit: 50 * 1024 * 1024 // 50 M
 });

1、server  修改为自己的后台处理类 通过 HttpFileCollection files = System.Web.HttpContext.Current.Request.Files; request.Files的方式获取插件上传的图片。

2、示例程序默认是启用压缩的,这个可以设置,当图片大于多少是可以自动压缩图片的,如果不需要压缩,则需要再初始化的时候添加 compress:false, 属性

3、

accept: {
  title: 'Images',
  extensions: 'gif,jpg,jpeg,bmp,png',
  mimeTypes: 'image/*'
  },

官方上传图片的示例不知道什么原因把图片筛选这个注释掉了,如果想上传的文件只能选择图片,则需要去掉注释

4、增加了对图片像素大小的判断,自己用了uploadAccept 方法,是把图片提交上去了之后再后台进行判断的,(不知是否有更好的办法)因为插件本身的file类是可以处理文件的,所以并没有单独获取像素的属性,示例:

uploader.on('uploadAccept', function (object, ret) {
 
  var resJson = $.parseJSON(ret._raw);
  if (resJson.result == "error") {
   alert(object.file.name + "象素太低,请检查上传!");
   return false;
  }
 
  });

该方法返回false的时候,会导致图片上传失败,所以后台判断像素后通过后台返回的状态来改变图片上传的状态。

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

jQuery 相关文章推荐
jQuery实现的动态文字变化输出效果示例【附演示与demo源码下载】
Mar 24 jQuery
jQuery复合事件用法示例
Jun 10 jQuery
jQuery层级选择器_动力节点节点Java学院整理
Jul 04 jQuery
关于JS与jQuery中的文档加载问题
Aug 22 jQuery
详解webpack3如何正确引用并使用jQuery库
Aug 26 jQuery
jQuery动态添加元素无法触发绑定事件的解决方法分析
Jan 02 jQuery
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
jQuery的Ajax接收java返回数据方法
Aug 11 jQuery
jQuery轮播图实例详解
Aug 15 jQuery
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
Apr 04 jQuery
jquery选择器和属性对象的操作实例分析
Jan 10 jQuery
jQuery实现本地存储
Dec 22 jQuery
关于jquery form表单序列化的注意事项详解
Aug 01 #jQuery
简述jQuery Easyui一些用法
Aug 01 #jQuery
Jquery中.bind()、.live()、.delegate()和.on()之间的区别详解
Aug 01 #jQuery
jquery easyui如何实现格式化列
Jul 30 #jQuery
jQuery dateRangePicker插件使用方法详解
Jul 28 #jQuery
jQuery获取table表中的td标签(实例讲解)
Jul 28 #jQuery
vue单页应用中如何使用jquery的方法示例
Jul 27 #jQuery
You might like
php计算2个日期的差值函数分享
2015/02/02 PHP
加速IE的Javascript document输出的方法
2010/12/02 Javascript
Javascript事件热键兼容ie|firefox
2010/12/30 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
2015/09/27 Javascript
JS实现的倒计时效果实例(2则实例)
2015/12/23 Javascript
JavaScript File API实现文件上传预览
2016/02/02 Javascript
RequireJS 依赖关系的实例(推荐)
2017/01/21 Javascript
JS排序之冒泡排序详解
2017/04/08 Javascript
JavaScript原生实现观察者模式的示例
2017/12/15 Javascript
JavaScript如何实现元素全排列实例代码
2019/05/14 Javascript
layui 实现自动选择radio单选框(checked)的方法
2019/09/03 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
Python生成随机密码
2015/03/10 Python
Python中最常用的操作列表的几种方法归纳
2015/04/24 Python
Python中利用原始套接字进行网络编程的示例
2015/05/04 Python
Python编程实现生成特定范围内不重复多个随机数的2种方法
2017/04/14 Python
python 发送和接收ActiveMQ消息的实例
2019/01/30 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
关于numpy数组轴的使用详解
2019/12/05 Python
python主线程与子线程的结束顺序实例解析
2019/12/17 Python
Python多进程multiprocessing、进程池用法实例分析
2020/03/24 Python
python 爬取百度文库并下载(免费文章限定)
2020/12/04 Python
销售业务实习自我鉴定
2013/09/23 职场文书
高中三年学习生活的自我评价
2013/10/10 职场文书
2013年大学生的自我鉴定
2013/10/24 职场文书
工厂实习感言
2014/01/14 职场文书
党员“四风”问题批评与自我批评思想汇报
2014/10/06 职场文书
学校运动会广播稿
2014/10/11 职场文书
导游词之包公祠
2019/11/25 职场文书
MySQL 可扩展设计的基本原则
2021/05/14 MySQL
Python 机器学习工具包SKlearn的安装与使用
2021/05/14 Python
Spring Boot两种全局配置和两种注解的操作方法
2021/06/29 Java/Android
Redis性能监控的实现
2021/07/09 Redis
使用CSS连接数据库的方式
2022/02/28 HTML / CSS
Linux磁盘管理方法介绍
2022/06/01 Servers