js图片选择、预览、压缩

var ___theImgInfo = {
    width: 0,
    height: 0
}

//图片选择
$(document).on('click', '.the-img-view', function () {
    $('#input-img').click();
});

//图片选中后预览
$(document).on('change', '#input-img', function () {
    if ($(this).val().length <= 0) return;

    //预览功能 start
    var file = this.files[0];//获取file文件对象

    var _imgDom = document.getElementById('the-img');

    var reader = new FileReader();
    reader.onload = function () {
        _imgDom.src = this.result; //这里图片预览

        $('#the-img').css('display', 'block');
        $('#the-img-msg').css('display', 'none');

        //获取图片原始宽高
        _imgDom.onload = () => {
            ___theImgInfo.width = _imgDom.naturalWidth;
            ___theImgInfo.height = _imgDom.naturalHeight;
        }
    };
    reader.readAsDataURL(file);
    //预览功能 end
});

//图片压缩
function compress() {
    var canvas = document.createElement('canvas');
    var context = canvas.getContext('2d');
    canvas.width = ___theImgInfo.width / 2;
    canvas.height = ___theImgInfo.height / 2;
    context.drawImage(document.getElementById('the-img'), 0, 0, ___theImgInfo.width / 2, ___theImgInfo.height / 2);

    return canvas.toDataURL('image/jpeg', 0.5);// 压缩后质量
}

$(document).on('click', '#btn-submit', function () {
    if ($('#the-img').attr('src').length <= 0) {
        $.toast("请选择照片", "text");
        return;
    }

    //上传图片并跳转
    var _imgBase = compress();
});

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值