jQuery Plupload上传插件的使用


Posted in jQuery onApril 19, 2017

jQuery Plupload上传插件的使用 首先下载plupload->http://www.plupload.com

因为Plupload可配置参数比较多,所以这里讲解最常用的,结合jquery-ui展示的界面!如下:

jQuery Plupload上传插件的使用

Plupload默认支持html5,flash,silverlight,html4,四种上传方式,按照顺序进行加载,如果浏览器不支持html5则会选择flash...到最后html4,

如果不需要某种上传方式,在配置里面不写即可!

 直接上代码

<body>
  <div id="uploader">
    <p>Your browser doesn't have Flash, Silverlight or HTML5 support.</p>
  </div>
  <script type="text/javascript">
  $(function(){
    $("#uploader").plupload({
      runtimes: 'html5,flash,silverlight,html4',//这里可以不写,plupload默认支持
      url: "UploadPhotoServlet",//上传后台请求路径
      max_file_size: '1000mb',//用来限制单个文件大小的
      multi_selection: true,//默认支持多文件上传,false不支持
      chunk_size: '0',//是否将上传文件进行分片,0代表是不分
      /*resize配置是对图片的处理
        可以使用该参数对将要上传的图片进行压缩,该参数是一个对象,里面包括5个属性:width:指定压缩后图片的宽度,如果没有设置该属性则默认为原始图片的宽度
        height:指定压缩后图片的高度,如果没有设置该属性则默认为原始图片的高度
        crop:是否裁剪图片
        quality:压缩后图片的质量,只对jpg格式的图片有效,默认为90。quality可以跟width和height一起使用,但也可以单独使用,单独使用时,压缩后图片的宽高不会变化,但由于质量降低了,所以体积也会变小
        preserve_headers:压缩后是否保留图片的元数据,true为保留,false为不保留,默认为true。删除图片的元数据能使图片的体积减小一点点
        resize参数的配置示例如下:
      */
      /* resize : {
        width: 200,
        height: 200,
        quality: 90,
        crop: true
      }, */
      /* rename: true, *///允许多队列文件进行重命名
      /* sortable: true,*/ //启用队列中的文件排序功能,更改上传优先级
      /*dragdrop: true, */ //开启拖拽上传,默认true
      /*
        下面是展示右边的缩略图和列表 两个功能
        默认显示缩略图
      */
      views: {
        list: true,
        thumbs: true, // Show thumbs
        active: 'thumbs'
      },
      /*
        flash 和 xap 上传需要的文件
      */
      flash_swf_url : 'plupload/js/Moxie.swf',
      silverlight_xap_url : 'plupload/js/Moxie.xap'
    });
  })
</script>
</body>

在官方文档有这样一句话

jQuery Plupload上传插件的使用

 也就是说,UI.Plupload 需要jquery-ui的支持,http://jqueryui.com/download/ 选择合适的主题,我选的是这个

jQuery Plupload上传插件的使用

完整的 引入文件是

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <script type="text/javascript" src="plupload/js/jquery.js"></script>
  <script type="text/javascript" src="plupload/js/jqueryui/jquery-ui.min.js"></script>
  <link rel="stylesheet" href="plupload/js/jqueryui/jquery-ui.min.css" rel="external nofollow" />
  <script type="text/javascript" src="plupload/js/plupload.full.min.js"></script>
  <script type="text/javascript" src="plupload/js/jquery.ui.plupload/jquery.ui.plupload.min.js"></script>
  <script type="text/javascript" src="plupload/js/i18n/zh_CN.js"></script>
  <link rel="stylesheet" type="text/css" href="plupload/js/jquery.ui.plupload/css/jquery.ui.plupload.css" rel="external nofollow" />
  <title>plupload</title>
</head>

jQuery Plupload上传插件的使用

常见问题:

1、如果你发现点击 选择文件 按钮,弹出文件框特别慢,那么将,过滤文件代码去掉即可!根据具体情况,自己设置

filters: {
mime_types : [ //只允许上传图片和zip文件
{ title : "Image files", extensions : "jpg,gif,png" },
{ title : "Zip files", extensions : "zip" }
],
max_file_size : '400kb', //最大只能上传400kb的文件
prevent_duplicates : true //不允许选取重复文件
}

可以使用该参数来限制上传文件的类型,大小等,该参数以对象的形式传入,它包括三个属性:mime_types:用来限定上传文件的类型,为一个数组,该数组的每个元素又是一个对象,该对象有title和extensions两个属性,title为该过滤器的名称,extensions为文件扩展名,有多个时用逗号隔开。该属性默认为一个空数组,即不做限制。

max_file_size:用来限定上传文件的大小,如果文件体积超过了该值,则不能被选取。值可以为一个数字,单位为b,也可以是一个字符串,由数字和单位组成,如'200kb'

prevent_duplicates:是否允许选取重复的文件,为true时表示不允许,为false时表示允许,默认为false。如果两个文件的文件名和大小都相同,则会被认为是重复的文件

2、如果后台使用是的是文件域名称接收文件,并且附加有额外参数

jQuery Plupload上传插件的使用

需要额外设置两个参数

file_data_name:"uploadFile",//指定文件上传时文件域的名称,默认为file,例如在php中你可以使用$_FILES['file']来获取上传的文件信息
/* resize : {
  width: 200,
  height: 200,
  quality: 90,
  crop: true // crop to exact dimensions
}, */
multipart_params:{//上传时的附加参数,以键/值对的形式传入,服务器端可是使用$_POST来获取这些参数(以php为例)
 "prefixName":"magazine"
},

3、在和easyui,extjs等UI库进行整合时候,引入Plupload的文件一定要在easyui的引入文件之前,否则easyui会出现一些莫名奇妙的错误!

ok,到这里基本完成Plupload的使用,plupload中文参考文档 http://www.phpin.net/tools/plupload/,

这个文档仅仅介绍了Plupload基本的options,一些UI高级用法需要参考,

http://www.plupload.com/docs/v2/UI.Plupload#Constructor-method

以上所述是小编给大家介绍的jQuery Plupload上传插件的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
Sep 22 jQuery
浅谈jquery中ajax跨域提交的时候会有2次请求的问题
Nov 10 jQuery
jQuery实现的两种简单弹窗效果示例
Apr 18 jQuery
浅析vue-router jquery和params传参(接收参数)$router $route的区别
Aug 03 jQuery
Jquery和CSS实现选择框重置按钮功能
Nov 08 jQuery
jQuery实现动态添加和删除input框实例代码
Mar 26 jQuery
jQuery实现的点击显示隐藏下拉菜单功能完整示例
May 17 jQuery
高效jQuery选择器的5个技巧实例分析
Nov 26 jQuery
jquery制作的移动端购物车效果完整示例
Feb 24 jQuery
jQuery弹框插件使用方法详解
May 26 jQuery
Jquery使用each函数实现遍历及数组处理
Jul 14 jQuery
jquery实现简单拖拽效果
Jul 20 jQuery
jQuery ajax请求struts action实现异步刷新
Apr 19 #jQuery
jQuery加密密码到cookie的实现代码
Apr 18 #jQuery
Jquery-data的三种用法
Apr 18 #jQuery
JS与jQuery实现子窗口获取父窗口元素值的方法
Apr 17 #jQuery
jQuery实现动态生成表格并为行绑定单击变色动作的方法
Apr 17 #jQuery
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
Apr 14 #jQuery
jQuery EasyUI 为Combo,Combobox添加清除值功能的实例
Apr 13 #jQuery
You might like
同时提取多条新闻中的文本一例
2006/10/09 PHP
两个开源的Php输出Excel文件类
2010/02/08 PHP
PHP静态文件生成类实例
2014/11/29 PHP
THINKPHP项目开发中的日志记录实例分析
2014/12/01 PHP
简单谈谈PHP中strlen 函数
2016/02/27 PHP
javascript call和apply方法
2008/11/24 Javascript
jquery.cookie.js 操作cookie实现记住密码功能的实现代码
2011/04/27 Javascript
Prototype源码浅析 Enumerable部分(二)
2012/01/18 Javascript
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
2013/01/23 Javascript
js整数字符串转换为金额类型数据(示例代码)
2013/12/26 Javascript
通过点击jqgrid表格弹出需要的表格数据
2015/12/02 Javascript
JS与jQuery遍历Table所有单元格内容的方法
2015/12/07 Javascript
Bootstrap整体框架之JavaScript插件架构
2016/12/15 Javascript
node学习记录之搭建web服务器教程
2017/02/16 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
通过命令行创建vue项目的方法
2017/07/20 Javascript
浅谈node中的exports与module.exports的关系
2017/08/01 Javascript
基于Node.js模板引擎教程-jade速学与实战1
2017/09/17 Javascript
JavaScript中字符串的常用操作方法及特殊字符
2018/03/18 Javascript
angular4应用中输入的最小值和最大值的方法
2019/05/17 Javascript
vue 动态组件用法示例小结
2020/03/06 Javascript
[26:40]DOTA2上海特级锦标赛A组资格赛#1 Secret VS MVP.Phx第一局
2016/02/25 DOTA
Python多线程下载文件的方法
2015/07/10 Python
总结用Pdb库调试Python的方式及常用的命令
2016/08/18 Python
django限制匿名用户访问及重定向的方法实例
2018/02/07 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
详解Python3.6安装psutil模块和功能简介
2018/05/30 Python
详解python statistics模块及函数用法
2019/10/27 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
学校司机岗位职责
2013/11/14 职场文书
优秀实习自我鉴定
2013/12/04 职场文书
大学生活自我评价
2014/04/09 职场文书
入职担保书怎么写
2014/05/12 职场文书
python读取pdf格式文档的实现代码
2021/04/01 Python
一劳永逸彻底解决pip install慢的办法
2021/05/24 Python
SpringBoot使用ip2region获取地理位置信息的方法
2022/06/21 Java/Android