jQuery Plupload上传插件的使用

发布时间 - 2026-01-11 00:44:04    点击率:

 首先下载plupload->http://www.plupload.com

因为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中文参考文档 http://www.phpin.net/tools/plupload/,

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

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

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


# jquery  # plupload  # 使用  # 上传插件  # jQuery文件上传插件Uploadify使用指南  # Jquery uploadify图片上传插件无法上传的解决方法  # jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)  # 图片上传插件jquery.uploadify详解  # 分享20多个很棒的jQuery 文件上传插件或教程  # JQuery上传插件Uploadify使用详解及错误处理  # 上传  # 默认为  # 上传文件  # 可以使用  # 的是  # 是一个  # 如果没有  # 不支持  # 文档  # 则会  # 小编  # 不写  # 文件上传  # 如果你  # 也会  # 又是  # 多个  # 在此  # 不需要  # 给大家 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: HTML 中动态设置元素 name 属性的正确语法详解  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  laravel怎么配置Redis作为缓存驱动_laravel Redis缓存配置教程  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)  如何在局域网内绑定自建网站域名?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  简历在线制作网站免费版,如何创建个人简历?  高端网站建设与定制开发一站式解决方案 中企动力  Laravel如何使用Eloquent进行子查询  Java垃圾回收器的方法和原理总结  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  如何用AI帮你把自己的生活经历写成一个有趣的故事?  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  Python函数文档自动校验_规范解析【教程】  如何在服务器上配置二级域名建站?  如何快速搭建个人网站并优化SEO?  Laravel如何实现本地化和多语言支持?(i18n教程)  java ZXing生成二维码及条码实例分享  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Bootstrap整体框架之JavaScript插件架构  使用Dockerfile构建java web环境  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  JS中对数组元素进行增删改移的方法总结  如何在云虚拟主机上快速搭建个人网站?  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  js实现获取鼠标当前的位置  手机软键盘弹出时影响布局的解决方法  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  如何彻底删除建站之星生成的Banner?  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  教你用AI润色文章,让你的文字表达更专业  百度浏览器网页无法复制文字怎么办 百度浏览器复制修复  如何撰写建站申请书?关键要点有哪些?  想要更高端的建设网站,这些原则一定要坚持!  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  Laravel如何优化应用性能?(缓存和优化命令)  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  如何在IIS管理器中快速创建并配置网站?  JS实现鼠标移上去显示图片或微信二维码  如何在云主机快速搭建网站站点?  Laravel中的Facade(门面)到底是什么原理  Java遍历集合的三种方式  企业网站制作这些问题要关注  Laravel如何升级到最新版本?(升级指南和步骤)  详解jQuery中的事件