百度编辑器上传图片限制宽高

废话不多说,首先打开ueditor.all.js

找到下面的这行代码

    function initUploadBtn(){

在这个方法里面有一个判断文件格式的,在这个后面应该只有三行代码

 // 判断文件格式是否错误
                var filename = input.value,
                    fileext = filename ? filename.substr(filename.lastIndexOf('.')):'';
                if (!fileext || (allowFiles && (allowFiles.join('') + '.').indexOf(fileext.toLowerCase() + '.') == -1)) {
                    showErrorLoader(me.getLang('simpleupload.exceedTypeError'));
                    return;
                }

去掉这三行代码,如下(这三行代码提交模拟的表单,也就是上传文件)

domUtils.on(iframe, 'load', callback);
form.action = utils.formatUrl(imageActionUrl + (imageActionUrl.indexOf('?') == -1 ? '?':'&') + params);
form.submit();

添加 下面的代码

 var file = input.files[0];
                if (window.FileReader) {
                    var reader = new FileReader();
                    reader.readAsDataURL(file);
                    //监听文件读取结束后事件
                    var img = new Image();
                    img.src = reader.result;
                    img.onload = function() {
                        if (img.width >750  || img.height > 1200) {
                            showErrorLoader('商品详情图片上传宽度最大750px高度最大1100px');
                            form.reset();
                            domUtils.un(iframe, 'load', callback);
                            return;
                        }else{
                            domUtils.on(iframe, 'load', callback);
                            form.action = utils.formatUrl(imageActionUrl + (imageActionUrl.indexOf('?') == -1 ? '?':'&') + params);
                            form.submit();
                        }
                    };
                }

上面代码添加你会发现一个有趣的现象就是在onload上面打了断点才可以进入onload里面。

原因你们自己研究吧!

修改后代码

 var file = input.files[0];
                if (window.FileReader) {
                    var reader = new FileReader();
                    reader.onload = (function (file) {
                        return function (e) {
                            console.info(this.result); //这个就是base64的数据了
                            var img = new Image();
                            img.src=this.result;
                            img.onload = function (argument) {
                                console.log(this.width +'----------'+this.height)  //这里就是上传图片的宽和高了
                                if (this.width >1000  || this.height > 5600) {
                                    showErrorLoader('详情图片上传宽度小于100px,或者图片过长');
                                    form.reset();
                                    domUtils.un(iframe, 'load', callback);
                                    return;
                                }else{
                                    domUtils.on(iframe, 'load', callback);
                                    form.action = utils.formatUrl(imageActionUrl + (imageActionUrl.indexOf('?') == -1 ? '?':'&') + params);
                                    form.submit();
                                }
                            }
                        };
                    })(file);
                    reader.readAsDataURL(file);
                }else{
                    console.log("cccccccc");
                }
            });

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值