jQuery实现移动端图片上传预览组件的方法分析


Posted in jQuery onMay 01, 2020

本文实例讲述了jQuery实现移动端图片上传预览组件的方法。分享给大家供大家参考,具体如下:

之前的一篇博客:移动端H5图片预览和压缩,实现了基本的功能。这次则计划做成一个组件,可供前台、后台使用。

首先,我们先来捋一捋想要实现的功能:

  • 预览
  • 删除
  • 压缩
  • 上传到服务器

基本机构

这样,我们的组件结构就有了:

;!function(window, $, undefined){
  function Upload() { };

  Upload.prototype.change = function() { };

  Upload.prototype.del = function() { };

  Upload.prototype.compress = function() { };

  Upload.prototype.submit = function() { };

}(window, jQuery)

主要API

接下来,介绍一下组件需要用到的几个API:

  • FileList
````
// 获取上传文件的 FileList
document.getElementById('inputId').files
````
  • window.URL.createObjectURL(file):返回一个关于图片地址url的blob格式
  • createImageBitmap(file):返回一个imageBitmap对象,它包含着文件的相关信息
  • canvas.drawImage(imageBitmap):将图片画在canvas画布上,对图片大小进行缩放
  • canvas.toBlob():转化为blob对象,可以对图片质量进行更改
  • FormData:将上传图片保存在FormData的实例上,上传到服务器

DEMO:https://github.com/CaptainLiao/zujian/tree/master/Upload

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery实现的动态文字变化输出效果示例【附演示与demo源码下载】
Mar 24 jQuery
jQuery操作之效果详解
May 19 jQuery
jQuery 实现双击编辑表格功能
Jun 19 jQuery
jQuery.Sumoselect插件实现下拉复选框效果
Nov 09 jQuery
jQuery Datatables表头不对齐的解决办法
Nov 27 jQuery
JQuery实现简单的复选框树形结构图示例【附源码下载】
Jul 16 jQuery
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
Oct 26 jQuery
jquery validate 实现动态增加/删除验证规则操作示例
Oct 28 jQuery
jQuery实现鼠标拖拽登录框移动效果
Sep 13 jQuery
基于jQuery拖拽事件的封装
Nov 29 jQuery
jQuery实现动态向上滚动
Dec 21 jQuery
jQuery实现鼠标拖动图片功能
Mar 04 jQuery
jQuery实现的上拉刷新功能组件示例
May 01 #jQuery
jQuery实现的解析本地 XML 文档操作示例
Apr 30 #jQuery
jQuery事件模型默认行为执行顺序及trigger()与 triggerHandler()比较实例分析
Apr 30 #jQuery
jQuery实现高度灵活的表单验证功能示例【无UI】
Apr 30 #jQuery
jQuery插件simplePagination的使用方法示例
Apr 28 #jQuery
jquery检测上传文件大小示例
Apr 26 #jQuery
jquery实现轮播图特效
Apr 12 #jQuery
You might like
PHP Ajax中文乱码问题解决方法
2009/02/27 PHP
php中url传递中文字符,特殊危险字符的解决方法
2013/08/17 PHP
PHP中round()函数对浮点数进行四舍五入的方法
2014/11/19 PHP
php读取der格式证书乱码解决方法
2015/06/22 PHP
PHP pear安装配置教程
2016/05/14 PHP
php Session无效分析资料整理
2016/11/29 PHP
PHP与SQL语句写一句话木马总结
2019/10/11 PHP
js鼠标左右键 键盘值小结
2010/06/11 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
JS读取cookies信息(记录用户名)
2012/01/10 Javascript
select、radio表单回显功能实现避免使用jquery载入赋值
2013/06/08 Javascript
JavaScript编程中布尔对象的基本使用
2015/10/25 Javascript
提高JavaScript执行效率的23个实用技巧
2017/03/01 Javascript
Angular.Js之Scope作用域的学习教程
2017/04/27 Javascript
nodejs批量下载图片的实现方法
2017/05/19 NodeJs
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
2017/06/01 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
vue项目使用微信公众号支付总结及遇到的坑
2018/10/23 Javascript
vue+swiper实现左右滑动的测试题功能
2020/10/30 Javascript
Python3基础之输入和输出实例分析
2014/08/18 Python
Python自动化构建工具scons使用入门笔记
2015/03/10 Python
python开发中module模块用法实例分析
2015/11/12 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
Python子进程subpocess原理及用法解析
2020/07/16 Python
英国领先的在线旅游和休闲零售商:lastminute.com
2019/01/23 全球购物
售后服务经理岗位职责
2014/02/25 职场文书
模具专业毕业推荐信
2014/03/08 职场文书
委托公证书
2014/04/08 职场文书
大一新生学期自我评价
2014/04/09 职场文书
银行职员自我鉴定
2014/04/20 职场文书
安全演讲稿开场白
2014/08/25 职场文书
2014年外贸业务员工作总结
2014/12/11 职场文书
导游词之扬州大明寺
2019/10/09 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python
redis实现排行榜功能
2021/05/24 Redis
P站美图推荐——变身女主角特辑
2022/03/20 日漫