压缩图片lrz.all.bundle.js插件

参考文章  https://blog.csdn.net/Fiona_lms/article/details/80813112

<!doctype html>
<html lang="zh-cn">
<meta name="viewport" content="width=device-width, user-scalable=no">
<meta charset="UTF-8">
<head>
    <title>lrz压缩插件</title>
</head>
<body>
    <input  type="file" name="file_head" class="inputfile1"  accept="image/jpeg,image/png,image/jpg,image/gif"  multiple="multiple"/> 
    <div  id="inputfileimg"></div>
    <!--图片放大-->
    <script src="../lrz/lrz.bundle.js"></script>
    <script src="../lrz/lrz.all.bundle.js"></script>
    <script>
    	/*上传图片*/
	$(".inputfile1").on("change", function(event) {
		var files = this.files;
		// 限制图片大小
		if(this.files[0].size > ( 2*1024 * 1024))    {       
		lrz(this.files[0], {width: 300}).then(function (rst) {
			if(rst.file.size> ( 2*1024 * 1024)){
				layer.msg("图片大于2M", {
					time: 3000
				});
				return;
			}
			var data=rst.base64;
			data = data.split(',')[1];
			data = window.atob(data);
			var ia = new Uint8Array(data.length);
			for(var i = 0; i < data.length; i++) {
				ia[i] = data.charCodeAt(i);
			}
			var blob = new Blob([ia], {
				type: "image/png",
				endings: 'transparent'
			});
			var fd = new FormData();
			fd.append('imgFile', blob, 'image.png');
			fd.append('imgFile',rst.file);
			fd.append("type", 3);
			ajax.post(url, {
				data: fd,
				contentType: false, //不可缺
				processData: false, //不可缺
				success: function(data) {
					$("#inputfileimg").html("<img src='" + res_url(data.data[0]) + "'/>");
				},
				error: function(XMLHttpRequest, textStatus, errorThrown) {
					console.log(textStatus);
					alert(textStatus);
				}
			});
			
		}).catch(function (err) {
                //捕获错误,而且一旦出错上面的then都不会执行
 		}) 
	}else{
		var fd = new FormData();
		fd.append('imgFile', files[0]);
		fd.append("type", 3);
		imgFile(fd,$("#inputfileimg"));
	}
})
	/*
	 * 上传图片
	 * @param {*} postdata 接口传参
	 */
	function imgFile(postdata, imgobj) {
		ajax.post(url, {
			data: postdata,
			contentType: false, //不可缺
			processData: false, //不可缺
			success: function(resp) {
				if(resp.ok) {
					imgobj.html("<img src='" + res_url(resp.data[0]) + "'/>");
				} else {
					utils.errorTips(resp.msg);
				}
			},
			error: function(XMLHttpRequest, textStatus, errorThrown) {
				layer.msg('error');
				log(textStatus);
			}
		});
	}
</script>
</body>
</html>

引入插件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值