jquery实现本地图片上传预览和限流处理
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>HTML5 Upload</title> <script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
<script type="text/javascript">
//前台处理获取到的图片并预览,前台限制图片的高度和宽度及其图片大小
var src;
// //处理file input加载的图片文件
$(document).ready(function (e) {
//获取input图片宽高和大小
function getImageWidthAndHeight(id, callback) {
var _URL = window.URL || window.webkitURL;
$("#" + "imgUpload").change(function (e) {
var file, img;
if ((file = this.files[0])) {
img = new Image();
img.onload = function () {
callback && callback({"width": this.width, "height": this.height, "filesize": file.size});
};
img.src = _URL.createObjectURL(file);
}
});
} getImageWidthAndHeight('imgUpload', function (obj) {
// //文件上传后本质上就是上传的一个文件对象的列表,获取上传的列表中的第一个
var f = document.getElementById('imgUpload').files[0];
//通过下面的方法将文件读成流的形式
src = window.URL.createObjectURL(f);
//生成图片的预览
//判断图片的高度、宽度、大小
var height = obj.height;
var width = obj.width;
var size = obj.size;
var imageVaildInfo = vaildImage(height,width,size);
//如果不正确,进行将之前的清楚
if("success" !=imageVaildInfo ){
alert(imageVaildInfo);
$("#imgUpload").val("");
return;
}
document.getElementById('imageView').style.height=height+"px";
document.getElementById('imageView').style.width=width+"px";
document.getElementById('imageView').src = src;
}); //图片的大小等信息的验证
function vaildImage(height,width,size){
var imageVaildInfo;
if(height > 500){
imageVaildInfo = "你上传的图片已超出限定的图片高度,请重新上传!";
}else if(width > 500){
imageVaildInfo = "你上传的图片已超出限定的图片宽度,请重新上传!";
}else{
imageVaildInfo = "success";
}
return imageVaildInfo;
} }) </script>
</head> <body>
<input type="file" id="imgUpload" name="imgUpload" draggable="true" single/> <!--允许file控件接受的文件类型-->
<!--<input type="file" id="imgUpload" name="imgUpload" accept="image/*" multiple/>-->
<img id="imageView" src="" style="width:500px;height:500px;border:1px solid #000000;"/>
</body>
</html>
jquery实现本地图片上传预览和限流处理的更多相关文章
- JavaScript实现本地图片上传预览功能(兼容IE、chrome、FF)
需要解决的问题有:本地图片如何在上传前预览.编辑:最近发现这个功能很多是基于flash实现的,很多JavaScript实现的代码兼容性都很差,特别是在IE和firefox和chrome三个浏览器上不兼 ...
- HTML+Jquery实现多图片上传预览功能
HTML:使用input的onchange事件,它一改变就触发事件 <p id="p3"> <input name="File" onchan ...
- 使用ajax,结合jquery,php实现图片上传预览功能
大致逻辑:点击页面的file,上传图片到指定的php处理图片的文件,处理完成以后,将图片的连接地址返回,JS控制返回的数据,然后将图片动态的展示出来html代码<label> <im ...
- Jquery图片上传预览效果
uploadPreview.js jQuery.fn.extend({ uploadPreview: function (opts) { var _self = this, _this = $(thi ...
- 模拟QQ心情图片上传预览
出于安全性能的考虑,目前js端不支持获取本地图片进行预览,正好在做一款类似于QQ心情的发布框,找了不少jquery插件,没几个能满足需求,因此自己使用SWFuplad来实现这个图片上传预览. 先粘上以 ...
- 兼容好的JS图片上传预览代码
转 : http://www.codefans.net/articles/1395.shtml 兼容好的JS图片上传预览代码 (谷歌,IE11) <html xmlns="http:/ ...
- HTML5 图片上传预览
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8& ...
- ASP.NET工作笔记之一:图片上传预览及无刷新上传
转自:http://www.cnblogs.com/sibiyellow/archive/2012/04/27/jqueryformjs.html 最近项目里面涉及到无刷新上传图片的功能,其实也就是上 ...
- js实现图片上传预览及进度条
原文js实现图片上传预览及进度条 最近在做图片上传的时候,由于产品设计的比较fashion,上网找了比较久还没有现成的,因此自己做了一个,实现的功能如下: 1:去除浏览器<input type= ...
随机推荐
- 关于php下的ajax赋值传值的调试
在tp中, 在js中也可以使用 模板变量替换(比如__PUBLIC__)和 模板函数调用(比如: {:U('..')}) 等. 但是 只有直接放在 相应的 模板文件中, 只有放在index.html之 ...
- BalkanOI 2018 Parentrises(贪心+基础DP)
题意 https://loj.ac/problem/2713 思路 对于 \(\text{P1}\) 的档,首先可以看出 \(O(n^3)\) 的方法,即用 \(O(n^3)\) 的 \(\text{ ...
- java 反射的简介
https://blog.csdn.net/sinat_38259539/article/details/71799078
- JavaScript基础数据类型(一)
动态类型 JavaScript 是一种弱类型或者说动态语言.这意味着你不用提前声明变量的类型,在程序运行过程中,类型会被自动确定.这也意味着你可以使用同一个变量保存不同类型的数据: var foo = ...
- IT项目管理十大要素
1.项目需求PgMp.mypm.net 当项目混乱和不可控的时候,往往是源头出了问题,解决源头才能治本.项目管理者联盟文章 软件项目中的范围管理重点就是项目需求,需求包括原始需求,用户需求,产品需求和 ...
- springboot访问数据库(MySql)
1.使用JDBC访问数据库:JDBC是用于在Java语言编程中与数据库连接的API <dependency> <groupId>org.springframework.boot ...
- 记录Sql2012附加Sql2008的数据库出错的解决方案
只需要对要附加的数据文件[右键]->[属性]->[安全]->(选择“Authenticated Users”用户)[编辑]->让“Authenticated Users”用户具 ...
- Cache Line
转载: https://yq.aliyun.com/articles/46550
- linux-基础命令篇-02
基本命令:--LS 关于显示的颜色含义: 白色:表示普通文件 蓝色:表示目录 绿色:表示可执行文件 红色:表示压缩文件 浅蓝色:链接文件 红色闪烁:表示链接的文件有问题 黄色:表示设备文件 灰色:表示 ...
- IBM规则引擎(ODM)- (三)BOM工程 (下)
1.动态域添加 准备Excel文档,格式如下所示(性别为例). 将准备好的Excel表格拷贝至项目资源路劲下. 新建BOM条目. 选择创建空BOM条目,完成. 双击打开动态域,新建类(以性别为例). ...