jQuery Plupload上传插件的使用
首先下载plupload->
因为plupload可配置参数比较多,所以这里讲解最常用的,结合jquery-ui展示的界面!如下:
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>
在官方文档有这样一句话
也就是说,ui.plupload 需要jquery-ui的支持,http://jqueryui.com/download/ 选择合适的主题,我选的是这个
完整的 引入文件是
<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>
常见问题:
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、如果后台使用是的是文件域名称接收文件,并且附加有额外参数
需要额外设置两个参数
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中文参考文档 ,
这个文档仅仅介绍了plupload基本的options,一些ui高级用法需要参考,
http://www.plupload.com/docs/v2/ui.plupload#constructor-method
以上所述是小编给大家介绍的jquery plupload上传插件的使用,希望对大家有所帮助
上一篇: 关键词排名设定有哪些基本原则需要遵守
下一篇: 什么样的域名最适合SEO优化?
推荐阅读
-
JQuery中使用ajax传输超大数据的解决方法教程
-
jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析
-
jQuery内置的AJAX功能和JSON的使用实例教程
-
jquery1.8版本使用ajax实现微信调用出现的问题分析及解决办法
-
jquery中AJAX请求 $.post方法的使用
-
jquery 插件开发 extjs中的extend用法小结
-
使用jquery读取html5 localstorage的值的方法
-
jQuery 1.9使用$.support替代$.browser的使用方法
-
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
-
使用jQuery解决IE与FireFox下createElement方法的差异