登录  /  注册
博主信息
博文 19
粉丝 0
评论 2
访问量 29996
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
js前台压缩图片(优、简)
会飞的码蚁的博客
原创
1067人浏览过

码蚁原创,请大神多多指教(嘻嘻,有同事帮忙改进的)

<script>
/**
 *
 * @param id {string} input[file] elementID
 * @param width {number} 宽度
 * @param quality{number} 压缩质量 {0.1-1}
 * @param callback{function} 回调函数 默认参数{code: number, data: string}
 */
function min_img(id,callback,width,quality){
  var a={
    width:width || 640,
    quality:quality || 0.8
  }
  a.readFile= function(){
    var file = this.files[0];
    if (!/image\/\w+/.test(file.type)) {
      callback({code:101,data:'格式错误'});
    }else{
      var reader = new FileReader();
      reader.readAsDataURL(file);
      reader.onload = function(e) {
        var img = new Image(),
          // quality = 0.8, //image quality
          canvas = document.createElement('canvas'),
          drawer = canvas.getContext("2d");
        img.src=e.target.result;
        img.onload=function(){
          a.height = a.width * (img.height / img.width);
          canvas.width=a.width;
          canvas.height=a.height;
          drawer.drawImage(img, 0, 0, a.width, a.height);
          a.result = canvas.toDataURL("image/jpeg",a.quality);
          callback({code:100,data:a.result})
        }
      }
    }
  }
  if (typeof(FileReader) === 'undefined') {
    callback({code:102,data:'浏览器不支持'});
  } else {
    var input = document.getElementById(id);
    input.addEventListener('change', a.readFile, false);
  }
}
</script>

啦啦啦~~~自己用着挺好的,希望能帮助到你哦

本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学