ueditor 单图上传跨域解决办法(原创)

1、在 ueditor.config.js 中添加一个参数 is_kuayu

// 部分代码省略
UEDITOR_HOME_URL: URL

, serverUrl: "http://xxx.com/php/controller.php"

, is_kuayu: true // 新增代码

2、修改uedtitor.all.js,大约24519行,修改代码

function ajaxRequest(callback){
    var newForm = new FormData(form);
    $.ajax({
        url: imageActionUrl,
        type: 'POST',
        dataType: 'json',
        cache: false,
        data: newForm,
        processData: false,
        contentType: false,
        success: function(result){
            callback(result)
        }
    });
}

function callback(){
    try {
        var is_kuayu = me.getOpt('is_kuayu');
        if (is_kuayu === true) {
            ajaxRequest(function (result) {
                var link = me.options.imageUrlPrefix + result.url;
                if (result.state == 'SUCCESS' && result.url) {
                    loader = me.document.getElementById(loadingId);
                    loader.setAttribute('src', link);
                    loader.setAttribute('_src', link);
                    loader.setAttribute('title', result.title || '');
                    loader.setAttribute('alt', result.original || '');
                    loader.removeAttribute('id');
                    domUtils.removeClasses(loader, 'loadingclass');
                } else {
                    showErrorLoader && showErrorLoader(result.state);
                }
            });
        } else {
            var link, json, loader,
                body = (iframe.contentDocument || iframe.contentWindow.document).body,
                result = body.innerText || body.textContent || '';
            json = (new Function("return " + result))();
            link = me.options.imageUrlPrefix + json.url;
            if (json.state == 'SUCCESS' && json.url) {
                loader = me.document.getElementById(loadingId);
                loader.setAttribute('src', link);
                loader.setAttribute('_src', link);
                loader.setAttribute('title', json.title || '');
                loader.setAttribute('alt', json.original || '');
                loader.removeAttribute('id');
                domUtils.removeClasses(loader, 'loadingclass');
            } else {
                showErrorLoader && showErrorLoader(json.state);
            }
        }

    }catch(er){
        showErrorLoader && showErrorLoader(me.getLang('simpleupload.loadError'));
    }
}

3、注意事项

这种写法是依赖jquery的,而且兼容性不是很好,但是我实在没有别的办法了!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值